こんにちは、 ITプロマガジン です。
Webサービスを開発する際、一から全ての機能を実装するのはとても面倒ですよね。Web APIを使えるようになることで、効率よくWebサービスを開発することができます。
今回の記事では「Web APIの使い方についてよくわからない」「どうやって使いはじめたらいいの?」といった疑問をお持ちの方向けに
- Web APIの使い方や利用方法
- Web APIの学習コンテンツ
などご紹介いたします。
公開されている代表的なWeb APIや利用する上での注意点についてもお話していますので、Web APIの使い方をマスターしたい方は最後までご一読ください。
ドンピシャ案件の探し方
「案件はたくさんあるはずなのに、なかなか自分の望む案件が見つからない…」
エンジニア市場は売り手市場であるものの、いまだに正しいマッチングノウハウが確立されておらず、多くの方が案件探しに苦労されています。
ですが、現在の市場感や企業側に刺さる経験・スキルを理解し正しく案件探しをすれば、誰でも自身のバリューを活かし単価を伸ばすことができる、というのも事実です。
ITプロパートナーズでは、
・9割がエンド直案件のため、高単価
・約6割が週3-4案件のため、柔軟に働ける
・事業会社の自社開発案件が多い
などの魅力的な案件を数多く保有し、マッチング能力の高い即戦力エージェントが完全サポートします。
初めてのフリーランス、情報収集段階でも大丈夫です。あなたの働き方にマッチし、単価も高く、最もバリューを発揮できる案件を探しませんか?
目次
Web APIとは?
まずは、念のためAPIとは何かというところから見ていきましょう。
Web APIとは「Application Programming Interface」の一種です。
APIは、アプリケーションの開発者が、他のハードウェアやソフトウェアが提供する機能を利用するための手法で、現在のAPIは、Webによる通信で多く利用されているため、APIと記述されている場合の多くが「Web API」のことを指しています。
Web APIは、Webサイトに外部のサイトが提供する機能や情報を組み込んだり、アプリケーションソフトからWeb上で公開されている機能や情報を利用したりする際などに用いられています。
Web APIで機能を公開しているサーバに対してインターネットなどの通信ネットワークを通じて依頼内容をHTTPリクエストの形で送信すると、その処理結果がHTTPレスポンスの形で返ってきます。
そして、送受信されるデータの形式はAPIによって異なりますが、Webでよく用いられるXMLやHTML、JSON、各種の画像ファイル形式などが用いられています。
JSONって?
JSONとは、JavaScriptにおけるオブジェクトの表記法を応用したデータ形式を指します。
JavaScriptでの扱いが簡単で、WebサービスやAjaxなどでプログラム間でのデータ交換フォーマットとして多用されています。
数多くのプログラミング言語でJSONを簡単に扱えるようにする追加機能が公開されており、Web APIを利用することで、自分のソフトウェアに他のソフトウェアの機能を埋め込むことができ、アプリケーション同士で連携することが可能になるのです。
Web APIでは、仕様やルールとまとめてWeb上で公開しているものが一般的です。
Web APIを利用する目的としては「新しいサービスを開発するために利用する」ことが挙げられ、自社のアプリケーションをAPIとして公開することで、同じ特徴を持ったサービスが開発しやすくなります。
また、あるサービスの機能に特化させたり、より使いやすくなるように一部を改良することが可能となります。
APIは他社のサービスデータを利用できる?
またAPIでは、他社が提供するサービスのデータを利用することができます。
データを二次利用することで、情報のより多角的な分析が可能になり、新しい発見や気づきが生まれます。
Web APIを利用するメリットの1つが「ソフトウェア開発の効率化」です。作りたい機能がすでにAPIで公開されていれば、同様の機能を実装する必要はありません。
現在、GoogleやYahoo!、Amazon、ぐるなび、Facebook、Twitterなどの有名なWebサービスが独自のAPIを公開しており、ユーザーは各社のAPIを使用することで、各サービスのデータを検索したりサイトを利用きるようになります。
Web APIの使い方と利用の流れ
ここまでWeb APIの基本情報についてお伝えさせていただきました。
この先は、Web APIの使い方や基本的な流れについてご説明します。
1. Web APIを使うアプリケーションをWeb APIサイトに登録する
まずはじめに自分が利用したいWeb APIのサイトにご自身の基本情報を登録します。
名前やメールアドレス、企業で利用する場合は企業のURLを求められる場合が多いです。無料で使えますので、クレジットカード情報などは基本不要となります。
2. APIキー、APIシークレットを取得して、アプリケーションに設定する
基本情報を登録すると、APIキーとAPIシークレットを獲得することができます。
APIキーはID、APIシークレットはパスワードのようなものになります。
APIキーと、APIシークレットが外部に漏れてしまった場合、個人情報や機密情報流出に繋がってしまうので、情報漏洩しないよう厳重に管理しましょう。
3. 実際に操作してみる
APIによって多少異なりますが、それぞれのAPIで利用登録し、APIキーを取得すると利用可能になります。
基本的には、Webサイトにログインしてパスワードを発行してもらうのと同様な手続きを踏んでいきます。
サービスによっては、利用登録が不要なAPIもありますが、ほとんどのAPIは無料で利用が可能です(APIキーの取得も無料)。
Web APIでは、各APIサービスにリクエスト(キーワードを絞り込むなど)を送ると、処理結果がXMLやJSON、RSS形式などで出力されて返ってきます。
Web APIの開発はトライ&エラーの繰り返しです。
必要なAPIキーを取得したら、実際に自分で動かしてみるとその雰囲気が掴めると思うので、まずはローカルの開発環境で利用してみましょう。
Web APIを使う前提条件
Web APIを利用するには「PHP」や「Perl」「JavaScript」などのプログラミング言語にある程度精通していることが前提となります。
Web APIによって取得できるデータは、情報が並んでいるだけの形式で人が見やすいデータではありません。このデータを見やすい形式(HTML)に変換する必要があるため、PHPやJavaScriptなどのプログラミング言語が用いられています。
また、Web APIを使う場合、有料のレンタルサーバーに契約しておくことが重要となります。なぜなら、無料のレンタルサーバーではプログラミング言語(PHP、Perl)の実行環境が整っていないケースがあるからです。
APIに関しては、公開されているサンプルや初心者向けチュートリアルはあまり多くはありません。特にFacebookやTwitter、Amazon APIなど国外系サービスは、日本語の情報サイト自体が少ないため難易度は少し高くなってきます。
Web APIの主なサービス例
この先は、世の中でよく使われているAPIサービスを以下にまとめてみました。
ご自身でアプリケーションを作りたいと思っている方はぜひ参考にしてみてください。
Amazon API
公式サイト: Amazon API
Amazonから最新商品情報を取得し、自分のWebサイトに掲載することができます。
楽天商品検索 API
公式サイト:楽天商品検索 API
自分のWebサイト内で商品検索をしたり、在庫情報や値段変動もAPIを使うことで利用できます。また、楽天トラベルでは空室情報も取得可能です。
ぐるなびAPI
公式サイト:ぐるなびAPI
店舗情報を取得したり、自サイト内で店舗絞り込み検索や結果一覧を表示できます。なお、無料利用可能なAPIサービスの提供は2021年6月30日で終了となり、法人向けの有料サービスとして提供しています。
Google Maps API
公式サイト:Google Maps API
地図情報を様々な形式で取得可能です。GoogleはMap以外にも解析やチャート、検索系APIなども提供しています。
Yahoo API
公式サイト:Yahoo API
ショッピングやオークション、地図、検索、天気予報、テキスト解析など各種Yahooサービスが利用可能です。
Facebook API
公式サイト:Facebook API
写真や動画のアップロードと写真アルバムの作成、2人の利用者がFacebookの友達であるかどうかの判断などが可能です。
Twitter API
公式サイト:Twitter API(英語版)
自サイトや自作アプリから投稿や検索などが可能になります。
YouTube API
公式サイト:YouTube API
独自のWebサイトやアプリケーションにYouTube機能を埋め込むためのAPIとツールが多数用意されています。
Pinterest API
公式サイト:Pinterest API
画像共有サービスである「Pinterest」のユーザーデータにアクセスできるAPIです。
Dropbox API
公式サイト:Dropbox API
クラウド型ストレージサービス「Dropbox」の機能を利用できるAPIです。SDK(ソフトウェア開発キット)が用意されており、簡単にアプリに組み込むことが可能です。
お天気Webサービス API
公式サイト:お天気Webサービス API
全国142カ所の天気予報や予想気温と都道府県の天気概況情報を提供しています。
じゃらんWebサービス API
公式サイト:じゃらんWebサービス API
じゃらんnetの宿泊施設情報(空室検索、エリア検索、温泉検索)などをアプリに組み込んだり、情報サイトのコンテンツとして活用できます。
ソシオヘルスAPI
公式サイト:ソシオヘルス API
病気、症状などから書籍「六訂版 家庭医学大全科」の情報を検索できます。
Google Cloud Vision API
公式サイト:Google Cloud Vision API
膨大な数のカテゴリに各画像を素早く分類する機能や、画像内の個々のモノや人の顔を検出する機能、画像内に含まれているテキストを検出して読み取る機能を備えています。
Cloudinary
公式サイト:Cloudinary API
画像をアップロードして保存したり、画像加工などの機能を利用できます。
Evernote API
公式サイト:Evernote API
メモを作成・管理するためのアプリケーション/サービスである「Evernote」の情報を扱えるAPIです。
Web APIの登録例:Twitter APIの使い方
ここからは、代表的なWebサービスであるTwitter APIの使い方の手順を解説します。
1.アプリケーションの登録
アプリケーションは「API Key」「API Secret」で成り立っています。Twitter側では、個々のアプリケーションをAPI Keyによって識別されます。
Twitterのユーザーアカウントを作成したのと同様に、APIの利用では「アプリケーションの登録(API Keyの新規作成)」から始まります。
Twitter APIを利用するには、ユーザーアカウントが必要で、ツイートをしている人はそのアカウントをそのまま利用可能です。
また、「メールアドレス認証」と「電話番号認証」を完了していないユーザーは、アプリケーションの作成や編集ができまので未登録の方は、アプリケーション「Twitter Developers」のサイトから登録してください。
サインインするとアプリケーションの管理画面に移動し、用意されたフォームにアプリケーションの名前や概要などを入力します。
入力に問題がなければ、アプリケーションが作成され、自動的にそのアプリケーションを管理する画面へ遷移しましょう。
2.アクセストークンの取得
Twitter APIでユーザーの情報を読み取ったり、ユーザーとして書き込みをするなど、アカウントのデータにアクセスするには、そのユーザーのアクセストークンが必要になります。
Twitterのアクセストークンは、ユーザーアカウントにおけるIDとPASSと同様に「Access Token Key」「Access Token Secret」という2種類の文字列が必要です。
アクセストークンを取得するには、対象となるユーザー自身が認証作業をする必要があり、認証画面でユーザーが「連携アプリを認証」をクリックすることで、アプリケーション側がそのユーザーのアクセストークンを取得しましょう。
アクセストークンを取得するには、基本的に対象となるユーザーによる認証作業と、その認証作業をさせるためのプログラミングが必要になります。
しかし、アプリケーションの開発者自身のアクセストークンなら、アプリケーションの管理画面から簡単に発行することが可能です。
3.ベアラートークンの取得
アクセストークンが「ユーザー認証」であることに対して、ベアラートークンは「アプリケーション認証」を表しましょう。
「https://api.twitter.com/oauth2/token」にPOSTメソッドでリクエストを送り、クレデンシャルを作成します。
続いて、ヘッダー、ボディを作成しリクエストを送ることで取得できます。
4.データの取得/更新/メディアアップロード
Twitterアプリでは3種類のリクエスト方法を覚えておけば、ほぼ全てのAPIを利用できます。
GETメソッド(情報の取得)、POSTメソッド(情報の更新)、メディアアップロード(画像や動画の投稿)などのリクエスト方法があります。
Web APIの使い方が簡単に分かるコンテンツを紹介
最後に、Web APIをさらに理解を深めていくための学習コンテンツを紹介します。
コンテンツには無料のものから有料のものも含まれていますので、ご自身にあった方法で学習を進めていただけたらと思います。
SYNCER
代表的なAPIの使い方の説明やサンプルコードを紹介しています。
一から手順が説明されているだけでなく、実際の操作画面の画像もあるので初心者の方にとって理解しやすいコンテンツとなっています。
ドットインストール
ドットインストールではGoogle MapsのAPIを動画で学習することができます。
無料会員ではAPIキーの取得からマップの描写までを学ぶことができます。その先は、プレミア会員(月額1080円)の登録が必要となりますのでご注意ください。
Schoo
Schooとは参加型の生放送授業と録画授業から好みのジャンルを選択して勉強するコンテンツになります。
録画授業の中で、WebAPIの概要や利用するための原理原則、応用知識、開発実践を紹介しており、Web APIの基礎から学びたい人にとっておすすめの教材となっています。
放送授業は365日無料、録画授業は有料(月額980)となりますが、幅広いジャンルを学ぶことができますのでAPI以外の学習にもぜひ活用してみてください。
まとめ
ソフトウェアやWebサービスを開発する上で頼りになるWeb API、主要なAPIサービスや特徴、使い方など理解していただけましたか。
Web APIを使いこなせると、ご自身のアイディアや作りたいアプリを簡単にリリースすることだってできるのです。
便利なWeb APIを使って、あなたのオリジナルの新しいWebサービスや機能をぜひ実装してみてください。
- 高額案件を定期的に紹介してもらいたい
- 週2日、リモートワークなど自由な働き方をしてみたい
- 面倒な契約周りはまかせて仕事に集中したい
そのような方はぜひ、ITプロパートナーズをご利用ください!
まずは会員登録をして案件をチェック!