Zapier Вы не определили ошибку вывода при возврате и включенном вызове

При тестировании моего действия «Выполнить Javascript» я получаю следующую ошибку

строка: Вы не определили `output`! Попробуйте `output = {id: 1, hello: await Promise.resolve("world")};`

Я не понимаю, почему это происходит, когда моя функция включает возврат, а мой код вызывает эту функцию.

      const updateAccount = async function(z, bundle) {
  const data = [{
  "accountId": inputData.accountId,
  "values": {
     "Became Customer": inputData.becameCustomer,
     "Total MRR": inputData.totalMRR,
     "Company Owner": inputData.companyOwner
   }
  }];
  const promise = await fetch("https://app.pendo.io/api/v1/metadata/account/custom/value",     {
        method: "POST",
        body: JSON.stringify(data),
        headers: {
      "content-type": "application/json",
      "x-pendo-integration-key": "<my integration key>"}
    });
  return promise.then((response) => {
    if (response.status != 200) {
      throw new Error(`Unexpected status code ${response.status}`);
    } else {
      return response;
    }
  });
}
updateAccount()

1 ответ

Хотя ваша функция правильно ожидает завершения запроса сама по себе, нет ничего, что могло бы сказать функции ждать updateAccount()заканчивать.

Здесь также вообще не нужно писать функцию — действие «Запустить Javascript» в Code by Zapierуже заключает ваш код в asyncфункция. Попробуйте следующее:

      const data = [
  {
    accountId: inputData.accountId,
    values: {
      "Became Customer": inputData.becameCustomer,
      "Total MRR": inputData.totalMRR,
      "Company Owner": inputData.companyOwner,
    },
  },
];

const response = await fetch(
  "https://app.pendo.io/api/v1/metadata/account/custom/value",
  {
    method: "POST",
    body: JSON.stringify(data),
    headers: {
      "content-type": "application/json",
      "x-pendo-integration-key": "<my integration key>",
    },
  }
);

if (response.status !== 200) {
  throw new Error(`Unexpected status code ${response.status}`);
} else {
  return response;
}

Другие вопросы по тегам