0

我设法使用脚本将 Monday.com API 与谷歌表格连接起来,并在我的板上创建了一个新项目,但是,我只能插入项目名称,如何在我的列中插入一个值。

代码示例:

function Create_Line() 
{
  var ss = SpreadsheetApp.getActive();
  var sh = ss.getSheetByName("tests");
  var values = sh.getDataRange().getValues();
  var mondayAPIkey = "API_KEY"
  for(var i=1;i<values.length;i++)
  {
    if(values[i][7]=="")
    { 
      
      var query = "mutation($board:Int!, $name:String!,$colvals:JSON!){create_item(board_id:$board, item_name:$name, column_values:$colvals){id}}";
      var variables = {
                        "board" : "board_id",
                        "name" : values[i][0], //where column A has the name I want for the item
                        "colvals": JSON.stringify({ "column_id": "Coluna 1", "value": "Done"}) //calling the now formatted date variable
                       
                       };
      var pulseID = JSON.parse(makeAPICall(mondayAPIkey, query, variables)).data.create_item.id;
      sh.getRange(i+1, 8).setValue(pulseID)
    }
  }
}

样本电子表格

编辑:为了更好地解释这个问题,我正在寻找的结果是:

该脚本贯穿整个谷歌表格列表并在 Monday.com 上创建行,问题是我无法填充列值

4

1 回答 1

0

您传递给 monday.com API 的列值参数格式错误。我在您的原始帖子中找不到您的列 ID,所以我假设它是“coluna_1”。

尝试将变量更改为此:

var variables = {
  "board" : YOUR_BOARD_ID,
  "name" : values[i][0],
  "colvals" : JSON.stringify({"coluna_1" : "Done"})
}

根据官方周一 API 快速入门

我们的 GraphQL 架构将一组列值定义为 JSON 字符串(键值对)。column_values 对象的键必须是列 ID,并且值必须根据列的类型进行结构化。

如本文所述,您可以通过启用开发者模式找到列 ID 。

该值取决于 monday.com 中的列类型。您可以在此处查看 monday.com API 支持的列列表:API 文档

于 2020-10-27T19:54:37.100 回答