- 会員限定
- 2021/06/23 掲載
APIとは何か?API連携ってどういうこと?図解で仕組みをやさしく解説
合同会社Noteip代表。ライター。米国の大学でコンピューターサイエンスを専攻し、卒業後は国内の一部上場企業でIT関連製品の企画・マーケティングなどに従事。退職後はライターとして書籍や記事の執筆、WEBコンテンツの制作に関わっている。人工知能の他に科学・IT・軍事・医療関連のトピックを扱っており、研究機関・大学における研究支援活動も行っている。著書『近未来のコア・テクノロジー(翔泳社)』『図解これだけは知っておきたいAIビジネス入門(成美堂)』、執筆協力『マンガでわかる人工知能(池田書店)』など。

APIとは? プログラム同士をつなぐ「インターフェース」
APIとは「アプリケーション・プログラミング・インターフェース(Application Programming Interface)」の略称です。一言で表すと、ソフトウェアやプログラム、Webサービスの間をつなぐインターフェースのことを指します。インターフェースとは、何かしらの「境界面」「接点」のことを指し、異なる2つの事物の間をつなぐという意味を持ちます。たとえばキーボードやマウス、ディスプレイは人間とコンピューターの境界上で使われる「ユーザーインターフェース」の1つとして知られます。また、USBやHDMIといった、機械と機械をつなぐコネクターは「ハードウェアインターフェース」と呼ばれます。
そしてAPIは、主にソフトウェアやプログラム同士をつないでいるインターフェースなのです。
ユーザーがサービスを使う際にAPIの存在を意識することはあまりありません。しかしその裏では、実はAPIは幅広く使われています。
たとえばニュースサイトにGoogleアカウントでログインする際にはグーグルのAPIによってログイン情報が暗号化して認証されています。また、電子マネーで買い物する際には、決済代行サービスのAPIによって電子マネーの決済情報をやり取りされているのです。
API連携の仕組みを詳しく。どうやって異なるものをつなげるのか
ここで、APIでソフトウェア同士をつなぐこと、つまり「API連携」の仕組みをもう少し掘り下げてみましょう。
APIの基本的なプロセスは「リクエスト(要求)」と「レスポンス(応答)」で構成されます。リクエストをするのがAPI利用者で、レスポンスをするのがAPIの提供者。リクエストとレスポンスに関するルールはAPIの提供者が定めます。つまり、何のリクエストに対してどんなレスポンスを返すかということを提供者がAPIの設計段階で考え、実装し、利用可能な状態にします。この設計次第でAPIのリクエストとレスポンスの関係は大きく変わるので、「APIは●●をしてくれるもの」という決まりはありません。
少し具体的にAPIの利用シーンをイメージしてみましょう。私達はネットショッピングをする際にカード番号を打ち込みますが、番号・名前・期限・セキュリティコードなどの情報が安全性の低いネットショップのサーバに保管されると第三者に悪用される恐れがあります。そこでネットショップでは、カード会社が提供しているAPIが使われています。
ネットショップはAPIを通して「これからお客さまがカード情報を打ち込むから確認してくれ」と要求します。顧客によって打ち込まれた情報はネットショップを通さず、直接カード会社のサーバに届き、情報が確認され、ネットショップ宛に「カードを確認した。決済は完了」という連絡だけが送られます。ネットショップはカード情報を管理することなく決済が確認できるので、顧客は安全に買い物ができるようになり、ショップのサーバ管理コストも最低限に抑えられるというわけです。
上記例のネットショップのように、自社サービスでAPIを利用するのは簡単です。ルールに沿ってコードを書いて「この情報をくれ」「こういう動作をしてくれ」と要求するだけ。場合によっては利用者を識別するためのIDなどを送ることもありますが、公開されているAPIの多くが「誰にでも使える」状態になっています。使いすぎて利用制限がかかる場合もありますが、APIを使うこと自体はそこまで難しくないのです 。
APIの利用プロセスは役所や商店の「窓口」と似ています。APIを通して「何をしてほしいか」を仕様(申込用紙)に沿って記述し、APIの提供元にその要求を送信します。ルールに則って必要事項が書かれていれば、APIを提供するサービスやソフトウェアが要求を処理し、その結果を返答します。
APIを利用すれば、自分は何もせずにAPIに要求を送るだけで、「ある種の高度な情報処理や分析が実行するプログラム」さえ作れてしまうのです。
ただ、当たり前ですが、APIの定めた仕様で想定されていないことはできません。これは「問い合わせフォームに項目のないもの」「申請書に記入できないもの」「書式に則っていないもの」が受け付けられないのと同じです。
最初の段階でAPIの提供者が、サービスの利用範囲を決めているので、それ以外のことはできないようになっています。もし、APIのルールを破って想定されていない使い方をしたり、バグを利用したりすれば、それは不正利用、ハッキングとなる可能性があります。
一方で、APIを提供するのは簡単ではありません。APIは自社のサービスやプログラムを他人に使わせる仕組みを作るものです。どこまで使わせるか、どうやって使わせるか、どうデータやプログラムの利用に制限をかけ、安全に運用するか。一歩間違えればAPIの不正利用によってデータが流出したり、予期せぬ損害を自他に与えたり、信頼を損なう可能性があります。APIを提供するには慎重なAPIの設計が必要となるのです。
【次ページ】API利用のメリットとデメリット、主要APIもやさしく解説
関連タグ
PR
PR
PR