よく聞くけどよく分からない「API」とは??
皆さまこんにちは。2020年に新卒として株式会社コンピュータマネジメントに入社し、Webマーケティングを担当している入社4年目のMです。
ここ最近、「API」という言葉を耳にする機会が増えてきています。
私にとっては、ソフトウェアとソフトウェアをつなぐもの、というイメージが強いのですが、具体的に説明せよと言われると「うーん・・・?」と上手く言葉にできないのが現状です。
そこで今回は、このモヤモヤを解消すべく、「API」について改めて調べてみることにしました。
同じように、「なんとなく分かるけど、改めて意味を問われると説明できる自信が無い・・・」という方の参考になれば幸いです。
APIとは?
APIとは、「アプリケーション・プログラミング・インタフェース(Application Programming Interface)」の略語です。
3つの単語には、それぞれ次のような意味があります。
簡単に言えば、APIとは「異なる2つのソフトウェアやプログラム同士を繋げるための窓口」ということができます。
API連携とは?
「API連携」とは、APIを通して自らのソフトウェアに他のソフトウェアの機能を埋め込み、自ソフトウェアの機能を拡充させることです。
APIという「窓口」を通じて、他のソフトウェアが持つ機能を簡単に共有できることから、わざわざゼロからプログラムを組んで新しく機能を実装する必要がなくなり、開発の手間を大幅に削減できるようになります。
API連携により実現できる機能の例としては、次のようなものがあります。
API連携のメリット
異なる2つのソフトウェアやプログラムを繋げるAPIを活用すると、主に以下3つのメリットがあります。
開発の効率化・コスト削減
先にも述べた通り、API連携によって他社サービスの機能を埋め込むことができれば、自社で1から機能を実装する必要がなくなります。
そのため、開発スピードが向上して効率的に実装を進められるようになるほか、開発工程の省略により削減できた分のリソースを他のもっと重要な作業へと回せるようにもなります。
ユーザーの利便性向上
APIを活用したサービスの提供により、ユーザーの利便性が上がるというメリットもあります。
例えば、Twitter、FacebookなどのSNSアカウントの情報を利用したログイン機能を実装できれば、利用者は面倒なユーザー情報の入力を省略し、手軽にサービスの利用を始めることができます。
セキュリティの向上
既存サービスのAPIを活用すれば、GoogleやFacebookなどの認証システムを使ってログイン認証を行うことができます。
自前で二段階認証などの認証システムを作るよりも、大手Webサービス企業が提供している機能を活用したほうが、高いセキュリティレベルを保てますし、ユーザーにも安心感を与えることができます。
API連携のデメリット
API連携には多くのメリットがある一方で、注意すべきデメリットも存在します。
API提供元への依存度が高まる
APIを利用するとなると、良くも悪くもAPI提供元企業への依存度が高まることになります。
API提供元企業が突然仕様を変更したり、APIの提供を中止したりするようなことがあれば、アプリケーションに不具合が生じたり、最悪自社サービスの提供自体できなくなったりする恐れがあります。
不具合への対応ができない
API提供元のサーバーに障害が発生した場合、自社サービスにも影響が及ぶほか、自社でトラブル対応を行うことができません。
自社側でコントロールが効かないというリスクを踏まえた上で、万が一のトラブルに備えたBCP(事業継続計画)の策定をしておくと良いでしょう。
利用量に応じて費用がかかることも
APIには、無料で利用できるものもあれば、一定の範囲までは無料でそれ以上だと有料になるものもあり、料金形態は様々です。
中には、利用したデータ量に応じて料金が上乗せされる「従量課金制」を導入しているAPIもありますので、「使いすぎていつの間にか費用が膨らんでしまった・・・」なんてことにならないよう、必要に応じて表示回数の制限を設けるといった対策を行いましょう。
APIの使い方
サービスによっては若干異なることもありますが、基本的には以下の4つの手順を踏むことでAPIを利用できるようになります。
目的を明確にする
まずは、API連携をすることで具体的にどんな機能を実装したいのか、その目的を明確にします。
APIの利用登録
次に、APIを提供しているサービスへ利用登録を行います。
登録時には、利用者情報のほかにも、利用目的や接続するアプリケーションの情報などを入力することが多く、利用開始までに登録内容の審査が必要な場合もあります。
APIキーとシークレットキーの取得
サービスへの登録が完了したら、「APIキー」と「シークレットキー」を取得できます。
この2つはAPIを使用する際に必要な、いわばログイン認証情報であり、「APIキー」がID、「シークレットキー」がパスワードにあたります。
実装・動作確認
APIを利用するソフトウェアに取得したAPIキーとシークレットキーを設定し、プログラムの実装を行っていきます。
連携できたら、APIが正常に動作するかどうかテストを実施します。
まとめ
今回は、分かりそうで分からない「API」についてまとめてみました。
特に、APIの「I」=「Interface」が「異なる2つのものをつなぐ」という意味の言葉であることを覚えておくと、APIに関する話を聞いた時にすぐにパッと思い出せるかもしれませんね。
それでは今回はこの辺で。次回のnoteもお楽しみに!
ここまで読んでいただき、ありがとうございました!
この記事が気に入ったらサポートをしてみませんか?