IP 位置情報 API

Ip2Geo は利用状況アラートと請求をOpenEmail で送っています。

Ip2Geo は 1 回の API 呼び出しで IP アドレスを位置情報に変えます。15 種類のメールは OpenEmail を通り、その多くには元になったイベントから作った冪等キーが付くので、再試行してもコピーが送られることはありません。

ip2geo.dev にアクセス
libs/openemail/SendBatchEmails.ts
const chunkSuffix = `-${chunkNumber}`const chunkLimit = OPENEMAIL_IDEMPOTENCY_KEY_MAX_LENGTH - chunkSuffix.lengthconst chunkKey = idempotencyKey  ? `${idempotencyKey.slice(0, chunkLimit)}${chunkSuffix}`  : undefined const data = await OpenEmail.emails.sendBatch(  rendered,  chunkKey ? { idempotencyKey: chunkKey } : undefined,)

バッチは 100 通ずつ送られます。各チャンクにはイベントから導いた専用の冪等キーが付くので、再試行したチャンクが二重に送られることはありません。

15

種類のメール、それぞれ専用のテンプレート付き

12

種類は、イベントから作った冪等キー付きで送信

2026年9月

OpenEmail で稼働を始めた月

流れているもの

Ip2Geo が OpenEmail で
動かしているもの。

  • ログインコード10 分で期限切れになるワンタイムコード。新しいコードは 1 分に 1 回まで。
  • 利用状況アラートプランの照会数の 80% と 90% で警告し、上限に達したら通知します。
  • マイルストーン照会数が 1,000 回、1 万回、10 万回、50 万回、100 万回に達したときに、チーム全員にお知らせします。
  • チームとキーのアクティビティ招待、新しいメンバー、そして API キーの作成、ローテーション、削除をオーナーと管理者に知らせる通知。
  • 請求請求書リンク付きの支払い領収書、更新、プランの変更、支払いの失敗、解約。
  • お問い合わせフォームウェブサイトのお問い合わせフォームからのメッセージ。返信先アドレスには訪問者が設定されます。

作り方

Ip2Geo は
どう組み上げたか。

  1. 01

    すべてのテンプレートをレンダリング

    Ip2Geo の 15 個の React Email テンプレートは、送信のたびに HTML とプレーンテキストにレンダリングされます。

  2. 02

    すべてのメールにタグ

    各メールにはテンプレートのタグが付き、ほとんどには所属するプロジェクトのタグも付くので、あとから送信を絞り込めます。

  3. 03

    すべてのイベントにキー

    12 種類のメールには、プロジェクト、しきい値、請求期間など、イベントから作った冪等キーが付きます。

  4. 04

    100 件ずつバッチで送信

    チーム全員宛てのメールは emails.sendBatch で 100 件ずつ送られ、失敗は受信者ごとに返ってきます。

使っている機能

OpenEmail の機能のうち、
Ip2Geo が頼りにしているもの。

メール API

1 回の呼び出しで 1 通でも 100 通でも、今すぐでも後でも送れて、再試行しても二重送信になりません。

型付きSDK

TypeScript、Python、Ruby のクライアント。すべての操作にメソッドが1つずつある。

/threads?query=invoice
{ "threads": 12 }
人が使っていてもプログラムが使っていても、同じメールボックス。
API キー

用途ごとに 1 つのキー。必要なスコープと送信元だけに絞り、すべての呼び出しを記録します。

複数ドメイン

サブドメインも含め、複数のドメインを 1 つの受信トレイに向けられます。

acme.comacme.devteam.acme.comhey.acme.io

質問

よくある質問、
Ip2Geo と OpenEmail について。

キーを発行。
何か送ってみる。

API、MCP、SDK のフルアクセスは、無料プランを含むすべてのプランで使えます。