Proje Yönetimi

Apps Komut Dosyası API'si, Apps Komut Dosyası projeleri oluşturmanıza ve değiştirmenize olanak tanır. nasıl sağlayabileceğini de öğreneceksiniz. Bu sayfadaki örnekler bazı yaygın projelerin nasıl yardımcı olabileceğinden bahsettik.

NOT: Apps Script API etkin olmalıdır. kontrol edin.

Bu örneklerde scriptId yer tutucuları komut dosyası proje kimliğini nereye sağlayacağınızı belirtmek için kullanılı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ında Kopyala'yı tıklayın.

Yeni bir Apps Komut Dosyası projesi oluşturma

Aşağıdaki projects.create isteği yeni bir bağımsız komut dosyası oluşturur.

POST https://scriptmanagement.googleapis.com/v1/projects/
{
  "title": "My Script"
}

Proje meta verilerini alma

Aşağıdaki projects.get isteği, komut dosyası projesinin meta verilerini alır.

GET https://scriptmanagement.googleapis.com/v1/projects/scriptId

Yanıt bir nesneden oluşur. Örneğin:

{
  "scriptId": "scriptId",
  "title": "My Title",
  "parentId": "parentId",
  "createTime": "2017-10-02T15:01:23.045123456Z",
  "updateTime": "2017-10-02T15:01:23.045123456Z",
  "creator": { "name": "Grant" },
  "lastModifyUser": { "name": "Grant" },
}

Proje dosyalarını alma

Aşağıdaki projects.getContent isteği, kod kaynağı ve kodu dahil olmak üzere komut dosyası projesinin içeriğini alır. meta verileri içerir.

GET https://scriptmanagement.googleapis.com/v1/projects/scriptId/content

Yanıt bir İçerik içerir nesne gibi kullanabilirsiniz:

{
  "scriptId": "scriptId",
  "files": [{
    "name": "My Script",
    "type": "SERVER_JS",
    "source": "function hello(){\nconsole.log('Hello world');}",
    "lastModifyUser": {
      "name": "Grant",
      "email": "grant@example.com",
    },
    "createTime": "2017-10-02T15:01:23.045123456Z",
    "updateTime": "2017-10-02T15:01:23.045123456Z",
    "functionSet": {
      "values": [
        "name": "helloWorld"
      ]
    }
  }, {
    "name": "appsscript",
    "type": "JSON",
    "source": "{\"timeZone\":\"America/New_York\",\"exceptionLogging\":\"CLOUD\"}",
    "lastModifyUser": {
      "name": "Grant",
      "email": "grant@example.com",
    },
    "createTime": "2017-10-02T15:01:23.045123456Z",
    "updateTime": "2017-10-02T15:01:23.045123456Z"
  }]
}

Proje dosyalarını güncelleme

Aşağıdaki projects.updateContent isteği, belirtilen komut dosyası projesinin içeriğini günceller. Bu içerik, HEAD sürümü olarak depolanır ve komut dosyası bir API olarak yürütüldüğünde kullanılır bir örneğidir.

PUT https://scriptmanagement.googleapis.com/v1/projects/scriptID/content
{
  "files": [{
    "name": "index",
    "type": "HTML",
    "source": "<html> <header><title>HTML Page</title></header> <body> My HTML </body> </html>"
  }, {
    "name": "My Script",
    "type": "SERVER_JS",
    "source": "function hello(){\nconsole.log('Hello world');}",
  }, {
    "name": "appsscript",
    "type": "JSON",
    "source": "{\"timeZone\":\"America/New_York\",\"exceptionLogging\":\"CLOUD\"}",
    "lastModifyUser": {
      "name": "Grant",
      "email": "grant@example.com",
    },
    "createTime": "2017-10-02T15:01:23.045123456Z",
    "updateTime": "2017-10-02T15:01:23.045123456Z"
  }]
}

Yanıt, aşağıdaki gibi bir İçerik nesnesinden oluşur:

{
  "scriptId": "scriptId",
  "files": [{
    "name": "index",
    "type": "HTML",
    "source": "<html> <header><title>HTML Page</title></header> <body> My HTML </body> </html>",
    "lastModifyUser": {
      "name": "Grant",
      "email": "grant@example.com",
    },
    "createTime": "2017-10-02T15:01:23.045123456Z",
    "updateTime": "2017-10-02T15:01:23.045123456Z"
  }, {
    "name": "My Script",
    "type": "SERVER_JS",
    "source": "function hello(){\nconsole.log('Hello world');}",
    "lastModifyUser": {
      "name": "Grant",
      "email": "grant@example.com",
    },
    "createTime": "2017-10-02T15:01:23.045123456Z",
    "updateTime": "2017-10-02T15:01:23.045123456Z",
    "functionSet": {
      "values": [
        "name": "helloWorld"
      ]
    }
  }, {
    "name": "appsscript",
    "type": "JSON",
    "source": "{\"timeZone\":\"America/New_York\",\"exceptionLogging\":\"CLOUD\"}",
    "lastModifyUser": {
      "name": "Grant",
      "email": "grant@example.com",
    },
    "createTime": "2017-10-02T15:01:23.045123456Z",
    "updateTime": "2017-10-02T15:01:23.045123456Z"
  }]
}