AppSheetアプリ。Freeプランの制限

AppSheetでアプリを作っていますが、開発に使われるであろうFreeプランって、意外と制限があります。

何があったのか?

開発していると、当然デバッグもあり、テストもあるわけで、そうしていれば、同じようなことを何回も繰り返すということがあります。

ですが。

  • AutomationのBotでスケジュールされたBotは使えない
  • Botで行うメール送信は、開発者にしか送信されない

というのは、いいですよ。

でも

This is due to hitting a rate-limit quota or invalid recipients

って何ですか!?

これは何?

ちょっと調べたところ

Freeプラン(未デプロイの状態)でテスト実行(RUN)する際、このエラーが出る主な原因は、無料枠特有の送信数上限と宛先制限のいずれかに抵触していることです。

  1. 送信数(通数)の極めて低い上限
    Freeプラン(Prototypeモード)では、オートメーションによるメール送信に以下の非常に厳しい制限が適用されます。
    1時間あたり: 合計 5通 まで
    1日あたり: 合計 30通 まで
    これを超えて「RUN」をクリックすると、即座にレート制限(Rate-limit quota)のエラーとなります。
  2. 宛先が「アプリ作成者本人」以外になっている
    Freeプランかつ未デプロイ(Prototype)の状態では、セキュリティ上の理由からアプリの所有者(作成者)以外にメールを送信できません。
    Invalid recipients: 宛先のアドレスが作成者のアドレスと完全に一致していない場合、このエラーが表示されます。
    動的な宛先設定: [Email] 列などを使って動的に宛先を指定している場合、テストデータに自分以外のメールアドレスが含まれているとエラーになります。
  3. テスト実行(RUN)時の1,000行制限
    Botを「RUN」ボタンで手動実行する場合、一度に処理できるのは最大 1,000行(または1,000通) までという技術的な上限があります。
    もし対象のテーブルに大量のデータがあり、一斉にメール送信を試みた場合は、この上限に達してエラーになることがあります。

まぁ、2は分かる。テスト中のメールを送られた方も困るしね。
基本、開発者にしかメールがいかないのはありがたい。

3も、そこまで大量のデータを用意するのは面倒だし、1000通のメールを送られてもね。

でもさ。
1はどうよ?

1時間5通って、1回RUNさせたら終わりじゃん。
Freeプランでは10人までだから一度に送れるのが10通までなのはいいとしても、1時間に5通って。

まとめ

まぁ、そうは言っても仕方ないので、1時間に1回だけテストするようにしましたよ。

Freeプランだけじゃなくて、開発用のプランも作って欲しいよね。
スケジュールBotとかも含めたすべての機能が使えるけど、開発のみ。
どうやって開発中って判断するかは別だけど、実行の様子(やたらと同じ機能を繰り返すとか)を見ていれば分かるような気もするけど...

価格は、Starterプランが5$なので、月1$とか?

開発でも、Coreプランとか契約しないとダメかもしれないですね。