API グループ

API グループを使用すると、API とリソースをバンドルして、特定のユーザーのニーズを解決できます。リストから個別のリソースと API を使用する代わりに、ユーザーは特定の問題を解決するパッケージでそれらへのアクセスを要求して使用できます。

API グループを作成するときに、インスタンスが解決する必要がある問題に基づいて、異なる SLA とレート制限の条件でそのグループのインスタンスをカスタマイズできます。その後、API グループを Anypoint Exchange にパブリッシュして、ユーザーがパッケージを登録できるようにします。

各 API グループインスタンスに複数の API インスタンスを含めることが可能で、各インスタンスに複数の API グループインスタンスソリューションを含めることができるため、パッケージのカスタマイズオプションは無限です。

API グループのしくみ

API グループ管理者が、特定の組織および環境用の API グループを作成します。API グループは、更新を簡単に組み込めるように、その中に含まれる API と同様にバージョン管理されます。

各 API グループに複数のインスタンスを含めることができ、各 API グループインスタンスに複数の API インスタンスを含めることができます。これらの API グループインスタンスは、本番と Sandbox などの異なる環境に存在できます。

次の図は、異なる環境で API グループを実装する方法を示しています。 API グループ階層

この例では、​ORG A​ と ​ORG B​ の 2 つのビジネスグループがあります。 各ビジネスグループには、​Sandbox​ と ​Production​ の 2 つの環境があります。​ORG A​ には ​Twitter​ と ​Facebook​ の 2 つの API があり、2 つの環境にその各 API の 1 つのインスタンスがあります。 ORG B​ には ​Instagram​ と ​Snapchat​ の 2 つの API があり、2 つの環境にその各 API の 1 つのインスタンスがあります。

ORG A​ には ​Social Media​ という 1 つの API グループがあり、1 つのバージョン ​V1​ があります。​Social Media V1​ には次の 2 つの API グループインスタンスがあります。

  • Sandbox​ 環境の API グループインスタンス ​QA​。

    このインスタンスには、​ORG A​ の ​Facebook v1​ (QA) と ​Twitter v1​ (QA)、および ​ORG B​ の ​Instagram v1​ (QA) と ​Snapchat v1​ (QA) の 4 つの API インスタンスがあります。

  • Production​ 環境の API グループインスタンス ​PROD​。

    このインスタンスには、​ORG A​ の ​Facebook v1​ (PROD) と ​Twitter v1​ (PROD)、および ​ORG B​ の ​Instagram v1​ (PROD) と ​Snapchat v1​ (PROD) の 4 つの API インスタンスがあります。

API グループインスタンス ​QA​ がパブリッシュされ、​API Group Social Media V1​ というアセットが作成されます。API グループインスタンス ​PROD​ がパブリッシュされた場合、アセットは作成されません。この場合、API グループ ​Social Media​ とバージョン ​v1​ は同じであるため、​PROD​ は既存のアセットにのみリンクされます。

API グループを使用して解決する問題の例

API グループがどのように API コンシューマーエンゲージメントを促進するかの理解を深めるために、気象学を使用して特定の場所と時間の大気の状況を予測する、Good Weather という架空の会社のニーズを考えてみます。

Good Weather の顧客は、次の API を使用して要求した結果にアクセスできます。

  • Locations API (場所 API)

  • Forecast API (予測 API)

  • Current Conditions API (現在の状況 API)

  • Indices API (インデックス API)

  • Weather Alarms API (天気警報 API)

  • Alerts API (アラート API)

  • Imagery API (イメージ API)

  • Tropical API (熱帯 API)

  • Translations API (翻訳 API)

現在、顧客が API にアクセスして使用するために従う必要があるプロセスは効率的ではなく、以下の作業が必要です。

  • Good Weather の企業ポータルを検索して、ビジネスフローを実現するために適切な API を見つける

    顧客が必要とする正確な API を判断するには、ポータルで長い API のリストを検索する必要があります。開発者が既存の API を変更したり、追加の API を導入したりすると、この問題はさらに悪化します。

  • サービス全体の変更を採用するために、複数の API サービスプランを個別に変更する

    これにより、サービスのアップグレードまたはダウングレードのタスクが複雑になります。

  • API アクセスが承認されたときに API の各要素にアクセスするための作業

    API のパッケージ化では、個々のコールとデータ要素へのアクセスが制限されません。これにより、セキュリティの問題と不要なオーバーヘッドが発生します。

API グループソリューション

Good Weather は API グループを使用して、コンシューマーの要件とシナリオに基づいて異なる API をパッケージ化でき、特定の SLA は他のコンシューマーの要件と競合しません。Good Weather は API の変更をすばやく適応して吸収できます。API グループを使用して、以下を行うことができます。

  • Good Weather は異なる API セットをパッケージ化して、異なるコンシューマーの要件を対象とすることができる。

  • API コンシューマーは、個々の API ではなく関連する API のコレクションにアクセスできるため、Good Weather ポータルでアセットを簡単に見つけることができる。

  • API グループは、1 回のクリックで変更可能な SLA プランを使用してガバナンスを適用できる。

次の表は、Good Weather がビジネスの要件を満たすために作成した API グループパッケージを示しています。

Trial (トライアル) Base (ベース) Enterprise (大企業)

Locations API (場所 API)

Locations API (場所 API)

Locations API (場所 API)

Forecast API (予測 API)

Forecast API (予測 API)

Forecast API (予測 API)

Current Conditions API (現在の状況 API)

Current Conditions API (現在の状況 API)

Weather Alarms API (天気警報 API)

Weather Alarms API (天気警報 API)

Alerts API (アラート API)

Imagery API (イメージ API)

Translations API (翻訳 API)

API グループの権限

API グループに関するすべてのタスクを実行するには、「API Group Administrator (API グループ管理者)」権限が必要です。この権限はビジネスグループレベルで設定され、ユーザーに以下のアクセス権を付与します。

  • ビジネスグループ内での API グループの作成、更新、および削除

  • API グループに API インスタンスを追加できるようにするための、ビジネスグループ内のすべての API インスタンスの参照

  • SLA 層の設定、および API グループとのコントラクトの管理