API Gateway

パフォーマンスと可用性に優れた API ホスティングサービス

無料で始める ドキュメント

API Gateway

API Gateway は、機能、サービス、データを API の形式でパートナーと共有するための、包括的な API ホスティングサービスです。

  • Anti-DDoS、反射攻撃対策、暗号化リクエスト、ID 認証、アクセス管理、リクエスト制御などの複数の保護対策を採用することで API のセキュリティが確保されます。これにより、API の公開に伴うリスクが最小限に抑えられます。

  • API の管理と反復作業の効率を向上させるため、API の定義、テスト、リリース、削除などのライフサイクル全体の管理機能や、SDK および API の手順の生成機能を提供します。

  • モニタリング、アラーム、分析など、運用と管理に適したツールを提供しており、API の運用とメンテナンスのコストが削減されます。

ソフトウェアの機能を API Gateway で共用化することで、他のサービスへの流用が可能になり、機能の再利用を最大限にすることができます。これにより企業における機能の共有が可能になり、それぞれのビジネスに注力し、双方にメリットがある状況を達成することができます。


利点

生産性の向上

API Gateway に API を登録すると、API 管理の手間から解放されます。API ドキュメントのメンテナンス、SDK のメンテナンス、API のバージョン管理などの面倒なタスクは、API Gateway がユーザーに代わって行います。これにより、日常的なメンテナンスコストが大幅に削減されます。

従量課金

日常的な API 管理、ドキュメントの生成、SDK の生成、リクエスト制御、アクセス管理については課金されません。API 呼び出し回数と、それに伴うトラフィック量に対して料金が発生します。

高パフォーマンス

分散デプロイメントおよび自動スケーリングにより、大量の API アクセスリクエストの処理が可能です。また、バックエンドサービス向けに高安全性と低レイテンシのゲートウェイ機能を提供します。

安全かつ安定

セキュリティの問題に頭を悩ませることなく、イントラネット環境でサービスを API Gateway に公開できます。厳格なアクセス管理、正確なリクエスト制御、包括的なアラームとモニタリングの機能も提供されており、安全かつ安定したサービスを実現します。

プロダクトの詳細

API Gateway の主な特徴を以下に示します。


特徴

API ライフサイクル管理

  • API のリリース、テスト、削除など、幅広いライフサイクル管理機能を提供します。

  • API の管理、バージョン管理、迅速なロールバックなどの、日常的なメンテナンス機能を提供します。

包括的なセキュリティ保護

  • HMAC 認証アルゴリズム (SHA-1、SHA-256) をサポートします。

  • HTTPS プロトコルと SSL 暗号化をサポートします。

  • Anti-DDoS、インジェクション対策、反射攻撃対策、リクエスト改ざん対策の機能を提供します。

柔軟な権限制御

  • API Gateway はリクエストに含まれた API 情報よって、特定のアプリの権限を制御することができます。

  • API にリクエストを送信できるのは、権限付与されたアプリのみです。

  • API プロバイダーは、手動でアプリに権限付与し、API の呼び出し権限を発行することができます。

正確なリクエスト制御

  • リクエスト制御では、API の合計アクセス数、アプリケーションからのリクエスト頻度、ユーザーからのリクエスト頻度を制御することができます。

  • リクエスト制御は、分単位、時間単位、または日単位で設定できます。

  • リクエスト制御は、特定のアプリケーションとユーザーに対して権限付与できます。

リクエストの検証

  • パラメーターの型と値 (範囲、列挙、正規表現、JSON スキーマ) の検証機能を備えています。パラメーターの型と値が無効な場合、即座に拒否されます。このため、無効なリクエストによるバックエンドリソースの浪費がなくなり、バックエンドサービスの処理コストが大幅に削減されます。

データ変換

  • マッピングルールを設定することで、フロントエンドとバックエンドの間でデータを変換できます。

モニタリングとアラーム

  • API Gateway は、呼び出し量、トラフィック量、応答時間、エラー率など、視覚的なリアルタイムの API モニタリング機能を提供します。モニタリングの対象は、カスタマイズ可能です。

  • 履歴データの照会が可能で、全体的な分析に役立ちます。

  • アラート方法 (メールなど) を設定することで、警告情報をリアルタイムに取得できるため、API の動作ステータスを把握することができます。

自動化ツール

  • オンラインで閲覧可能な API ドキュメントが自動生成されます。

  • 複数のプログラミング言語のデモ用 SDK を自動生成することができます。これにより、API の運用と管理のコストを削減できます。

  • コンソール上で可視化されたデバッグツールが提供されており、API をすばやくテストできます。

利用イメージ

API Gateway は、以下のようなさまざまな利用イメージに活用できます。

1. API Gateway を使用して、エコシステムを確立

企業はユーザーの増加とニーズの多様化に直面しており、顧客ごとに異なる問題を解決するために、新しいビジネスモデルを絶えず模索する必要があります。そのため、企業はサービスを API に標準化し、他のパートナーと開発者に公開し、各自のアプリに組み込ませることが必要になります。これにより新たなサービスが生み出され、自社のビジネスエコシステムを確立するほか、組織を超えたイノベーションの促進に役立ちます。

  • API Gateway を使用することで、自社のコアコンピタンスをパートナーと共有して、協力体制を強化し、共同開発を促進することができます。

2. API Gateway を利用して、複数の機能を集約した 1 つのサービスシステムを構築

モバイルや IoT デバイスの普及が進む中で、多様なデバイスをサポートさせるため、システムが複雑になりがちで、よりシンプルな通信の仕組みが必要となります。共通の API を API Gateway に登録することで、今までの複雑な通信の仕組みをシンプルにすることができます。

  • 管理する必要があるのは 1 つのサービスシステムだけで、そこから複数の端末に API の機能を提供します。

  • 1 組の API でさまざまなシナリオに対応できるため、運用や管理のコストが大幅に削減されます。

3. API Gateway を使用して、簡単にシステムを統合、標準化

  • API Gateway では、システム間のインターフェイスを標準化し、標準化されたインターフェイス使用してシステムを統合することができます。

  • リソースの迅速な統合と管理、企業の急速な成長や拡張に伴う機能の重複や無駄な開発を排除し、ビジネスの発展に向けたリソースの集中が可能になります。

料金

API Gateway は、API を提供するユーザーに対して以下の項目に対して課金します。

API Gateway の課金は、呼び出し回数とトラフィック量に基づいて計算されます。

API Gateway では、サービスの有効化、API の作成、API のリリース、API の管理は無料です。

API が呼び出されるときに、呼び出し回数 と、それにより発生するトラフィック量が課金されます。

呼び出し回数の料金の詳細

API Gateway を有効化した後、最初の 1 年間は毎月 100 万回の呼び出しを無料で利用できます。この制限を超える呼び出しは、次の表に基づいて課金されます。

1 か月の合計呼び出し回数単位:100万回ごと
0 - 1,000 万(含む)JPY¥103.5
1,000 万 - 1 億(含む)JPY¥69.0
> 1 億JPY¥51.8

呼び出し回数の料金の詳細:

a) 課金項目: API 呼び出し回数

b) 支払い方法: 従量課金

c) 請求サイクル: 毎月

d) 課金の発生: 時間単位で課金されます。

e) 課金通貨: JPY

f) 有効な呼び出し回数: API Gateway が受信したすべての API リクエストが有効な呼び出しとしてカウントされ、課金対象になります。

トラフィック料金の詳細

ダウンストリームトラフィックに基づいて、以下の課金が発生します。

課金項目単位中国本土青島香港シンガポールクアラルンプール (マレーシア)ムンバイ (インド)日本
トラフィック (ダウンストリームトラフィック)JPY¥/GB14.413.018.013.512.913.512.3

トラフィック料金の詳細:

a) 課金項目: トラフィック量 (ダウンストリーム)

b) 支払い方法: 従量課金

c) 請求サイクル: 毎月

d) 課金の発生: 課金は通常、課金サイクルの終了後 1 時間以内に行われます。

e) 課金通貨: JPY

f) バックエンドサービスが API Gateway と同じリージョンではないか、Alibaba Cloud にホストされていない場合は、API Gateway とバックエンドサービスの間のトラフィックについて追加料金が発生します。課金の基準は上記と同じです。

注意事項

A. 未払いによるサービスの一時停止

未払いが発生した場合、API の呼び出しはできなくなります (API 管理に関連する操作は実行可能です)。

B. 未払い解消によるサービスの再開

サービスの一時停止から 6 か月以内に未払いが解消されると、サービスは自動的に再開されます。6 か月以内に未払いが解消されなかった場合、お客様の API 設定情報が消去される場合がありますので、ご注意ください。

はじめに

API Gateway のドキュメントへのアクセス

API Gateway には、目的に応じて、さまざまなドキュメントが用意されています。

API Gateway を使用して API を公開する場合は、次のドキュメントをご参照ください。

ユーザーガイド (プロバイダー向け) クイックスタート (プロバイダー向け)

API Gateway を使用して、他のプロバイダーが作成した API を呼び出す場合は、次のドキュメントをご参照ください。

ユーザーガイド (コンシューマー向け) クイックスタート (コンシューマー向け)

リソース

API Gateway が外部ユーザーに提供する API と SDK のリンクを次に示します。これらのインターフェイスおよびツールにより、コンソールがなくても API Gateway プロダクトを使用できます。

これらの API は、ユーザーが API Gateway を使用して公開したものとは異なります。他のユーザーが公開した API を呼び出すために使用する SDK を検索するには、コンソールの [SDK のダウンロード] ページにアクセスします。

コンソールに移動して SDK のデモをダウンロード

開発者向けリソース

よくある質問

1. API Gateway にはどのような制限がありますか。

制限事項については、以下のドキュメントに記載されています。

コンシューマーに関する制限

プロバイダーに関する制限

2. 追加のセキュリティプロダクトが必要ですか。

お客様のセキュリティ要件に応じて異なります。API Gateway では、ID 認証、リクエストの暗号化、改ざん防止などの基本的なセキュリティ対策を採用しています。セキュリティ要件がさらに高い場合は、他のセキュリティプロダクトと組み合わせてください。

3. API Gateway は、ロードバランシング機能を備えていますか。

はい。API Gateway は、クライアントとゲートウェイの間でロードバランスを維持し、リクエストの数に従ってゲートウェイが自動的に拡張されます。ただし、バックエンドサービスが複数の ECS インスタンスに配置されている場合、ECS インスタンス間で負荷を分散するために Server Load Balancer が必要になることがあります。

4. 未払いが発生すると、どうなりますか。

API Gateway は従量課金制です。期日までに支払いがない場合、アカウントのステータスが未払いになります。未払いが解消されるまで、API サービスは一時停止されます。6 か月以内に未払いが解消されなかった場合、API Gateway は、お客様の API 設定情報を消去する権利を有します。

5. API Gateway がバックエンドサービスへのアクセスに失敗するのはなぜですか。

6. クライアントが未定義のパラメーターを API に渡した場合、API Gateway はどのように応答しますか。

API Gateway はそのパラメーターを破棄し、バックエンドサービスには渡しません。

7. HTTPS プロトコルはサポートされていますか。

はい。バックエンドサービスのアドレスを入力するときに、"https://" で始めることができます。また、バックエンドサービスの SSL 証明書が有効である必要があります。

8. API を公開するまでにどのぐらいの時間がかかりますか。

すぐに公開されます。したがって、API を公開するときは、注意が必要です。

9. API グループのリージョンは、どのように選択すればよいですか。

できるだけバックエンドのサーバーと同じリージョンを選択してください。

10. API グループのサブドメインの仕様について、教えてください。

サブドメイン名は、API Gateway によって割り当てられます。グループ内のすべての API が同じサブドメイン名を共有しています。サブドメイン名にアクセスすることで API をリクエストする場合、1 日のアクセス上限は 1000 回です。そのため、サブドメイン名を公開することはお勧めしませんが、 テスト以外の場合での使用制限はありません。

11. カスタムドメインとは何ですか。

API サービスを提供する場合、API グループにカスタムドメイン名をバインドする必要があります。このカスタムドメイン名にアクセスすることで、他のユーザーが API をリクエストできます。カスタムドメイン名には、第 2 レベルまたは第 3 レベルのドメインを使用できます。バインドする前に、API グループのサブドメインにカスタムドメイン名を追加する必要があります。

12. API Gateway とバックエンドサービスの間でセキュリティを確保するにはどのようにすればいいですか。

API Gateway でバックエンドの署名キーを設定するか、HTTPS を使用してリクエストを暗号化することができます。

バックエンドの署名

13. バックエンドの署名キーを変更する場合、API をリリースする必要がありますか。

いいえ。新しいキーを作成して API にバインドするだけで署名キーを置き換えることができます。

14. サービスを中断せずにバックエンドのキーを変更するにはどのようにすればいいですか。

キーを API にバインドすると即座に反映されるため、古いキーと新しいキーの両方に対応させておき、変更後に古いキーを削除する必要があります。

15. API Gateway 内にあるアプリとは、どのようなものですか。

アプリは API Gateway 利用者によって識別情報として作成されます。個々のアプリに AppKey と AppSecret があり、署名として使用されます。API Gateway は、アプリの署名と許可認証を行います。

16. API Gateway では、どのように権限を制御していますか。

API の利用者として API Gateway を使用する場合では、ID としてアプリが作成されている必要があります。API をリクエストするアプリが権限を持っているか、API サービスを購入している場合のみ、API をリクエストできます。

17. リクエストが失敗したときは、どのように問題を解決すればいいですか。

以下の項目を確認してください。

  • ドメイン名が解決されていること

  • ドメイン名が API グループのサブドメインにバインドされていること

  • API が公開されていること

  • アプリが権限付与されていること

  • バックエンドサービスのアドレスが正しく、正常にアクセスできること

  • タイムアウト設定を確認し、設定された時間内にバックエンドサービスが応答を返すこと

  • リクエスト制御に適切な値が設定されていること

エラー情報については、以下のドキュメントをご参照ください。

エラーコード表