ZapierやMakeの自動化を新しいジオコーディングホストへ移行する
ジオコーディングのステップを含むノーコードの自動化には、独自のコードとは異なる移行方法が必要です。その切り替えの進め方を紹介します。
Mapboxはセットとして導入されることがよくあります。ジオコーディング、静的地図画像、ベクタータイル、Mapbox GLの描画ライブラリが、すべて1つのアクセストークンと1つのアカウントの下にあります。プロジェクトに地図の機能一式が必要な場合、このまとめ方は理にかなっていますが、範囲を絞った移行を難しくします。ジオコーディングのプロバイダーだけを変えたいチームが、ジオコーディングの呼び出しと地図描画のコードで設定やトークン、さらには同じリクエストのラッパー関数まで共有していることに気づくかもしれないからです。
この種の移行の本当の最初のステップは、技術的なものではなく、範囲の決定です。地図タイルと静的地図画像はMapboxに残し、ジオコーディングの呼び出しだけを他に移すと明確に決めておくことで、よくある失敗を避けられます。境界があいまいなまま移行を始め、両方の関心事に関わるコードを中途半端に変更してしまうという失敗です。
My Geocodeはジオコーディング、IP、タイムゾーン、標高、郵便番号を検索するAPIです。地図タイルや静的地図画像は描画しないため、Mapbox連携のその部分の代わりにはならず、代わりになるのは住所検索の部分だけです。Mapbox互換ホストは、Mapbox Geocodingが返すGeoJSONのFeatureCollectionの構造を、center、place_name、contextの各フィールドも含めて再現しており、違いは著作権、利用規約、プライバシーに関する文言だけです。詳細なリファレンスは/compatibility/mapbox/にあります。
切り離しのための実践的な手順です。
ジオコーディング互換ホストの認証は、キーをX-API-Key、Authorization: Bearer、HTTP Basic認証、クエリパラメータのいずれかで送る形で動作します。キーなしで1日あたり2,500リクエストが無料、さらにキーごとにネットワーク単位でカウントされる1日あたり2,500リクエストが無料で、その後は1リクエストあたり€0.0001のプリペイドクレジット、または月額€50のUnlimitedキーとなり、このホストを含むすべてのエンドポイントに同じ料金が適用されます。
地図描画用と住所検索用の2つのプロバイダーを並行して使うのは、解消すべき一時的な状態ではなく、長期的に安定した構成です。多くの本番アプリケーションが、地図とジオコーディングを意図的に別々のベンダーに分けています。2つの機能はコストを左右する要因も技術的な要件も異なり、最初にそうだったからといって1つのアカウントにまとめる義務はありません。