POINTAPI / アプリケーションプログラミングインターフェースとは
APIとは「アプリケーションプログラミングインターフェース(Application Programming Interface)」の頭文字を取ったもので、ソフトウェアの機能や管理データを外部に向けて公開することによって、外部の他のソフトウェアと機能を共有できるようにする仕組みや規約のことです。これにより、汎用性の高い機能を外部から手軽に利用することができます。
えーぴーあい/あぷりけーしょんぷろぐらみんぐいんたーふぇーす
ソフトウェアの機能や管理データを外部に公開することで、他のソフトウェアと機能を共有できるようにする仕組みや規約のこと
APIとは「アプリケーションプログラミングインターフェース(Application Programming Interface)」の頭文字を取ったもので、ソフトウェアの機能や管理データを外部に向けて公開することによって、外部の他のソフトウェアと機能を共有できるようにする仕組みや規約のことです。これにより、汎用性の高い機能を外部から手軽に利用することができます。
アプリケーションとは、特定の作業の目的に応じて使うソフトウェアのことを指します。具体的には、文章作成ソフトや表計算ソフト、画像編集ソフト、プレゼンテーションソフトなどがこれにあたります。
これに対してOSやドライバなど、コンピューターの制御に使われるソフトウェアのことを、システム・ソフトウェアといいます。
インターフェースとはもともと、英語で「接点」や「接触面」という意味の言葉です。それが転じてIT業界では、種類が異なる機器同士やコンピューターとプログラムなど、異なる二つのものをつなげる役割を持つもの、という意味で用いられるようになりました。
例えば、パソコンと周辺機器を繋ぐUSBも、インターフェースの一つにあたります。
作成したい機能が、信頼できるプログラムとしてAPIで既に公開されていた場合、そのプログラムと連携することで自分で1から開発する必要がなくなります。これによりソフトウェア開発の効率化を図ることができ、開発にかかる時間を大幅に削減することができます。
開発にかかるコストが削減できる上に、開発段階で削減した時間を他の工程に充てることができるため、結果的にコスト削減につながります。
APIを連携することで、別のアプリケーションへのログインによってログイン認証をおこなうことも可能となります。このように既存のセキュリティレベルの高い会員登録システムを導入することで、セキュリティの向上を図ることができます。ただしAPIを連携する前に、ユーザー情報の共有についてユーザーの承諾を得る必要があります。
またユーザーにとっても、会員登録の際に必要なメールアドレスの登録やパスワードの入力などの面倒な手続きを省くことができるというメリットがあります。
APIを利用することで、各種サービスの最新情報を毎回更新することなく、取得および利用することができます。
例えば、自分のサイトでAmazonの商品を販売している場合、APIを連携することでAmazonでの販売価格の変更を自動で反映することができます。
APIを利用することで、他の既存のソフトウェアの機能を利用することが可能となります。これにより、コストの削減や新たなサービスの創出などが期待できます。
APIには多くの種類があり、作成するアプリケーションの種類によって使い分けることができます。ビジネスや教育、エンターテイメントなど、目的に沿ってAPIを選択しましょう。
APIを連携することで、Instagramの投稿を同時にTwitterに投稿することもできます。
従来、特許で保護されている場合を除いて、APIには著作権などの知的財産権は存在しないと考えられてきた。しかしアメリカでAPIに著作権を認める判決が出たため、今後はAPIの著作権にまつわる状況は変化していく可能性があります。
他のソフトウェアの機能を簡単に利用できるAPIですが、これを利用した機能は提供側に依存していることがデメリットとして挙げられます。
一般的にAPIとして公開されているのはソフトウェアの一部であり、システム本体のソースコードは公開されていない場合がほとんどです。そのため提供側が機能の提供をやめた場合は、その機能を利用することができなくなってしまいます。Webサイトやシステムへの影響を抑えるため、代替の方法を用意するなど、対策をとっておくことが重要です。
APIを利用するためにはまず、APIを提供している企業の専用サイトに、アプリ名やアプリケーションのドメインなど、アプリケーション情報を登録しなければなりません。次に「APIキー」と「シークレット」を取得し、この2つをアプリケーションに設定します。これにより外部から勝手に利用されることがなくなり、セキュリティを保護することができます。
以上の工程により、APIを利用するための準備が整います。
InstagramはFacebookとAPI連携をおこなっているため、Facebookのユーザー情報を利用してInstagramのサービスにログインすることができます。またこれにより、Facebookの友達がInstagramを使い始めたときや、新しく投稿したときに通知を受け取ることができます。
このようにAPIを使ってアプリケーション同士を連携することで、新たなサービスを提供することができます。