REST-API

この記事はREST-APIについて解説した記事です。会話形式のやさしい文章で「REST-API」の用語のイメージを紹介した後に、採用に役立つREST-APIの知識を解説しています。

1分で分かる!REST-APIとは?

ジャバード先生、聞いてもいい??

もちろん!どうしたの?

前にAPIについて教えてもらったでしょ?

そうだね。APIがどうかしたの?

ボク、ちょっと考えてたんだ。APIって特にルールはないんだよね?

ルール?まぁそうだね。

じゃあさ、もし性格が悪い人がAPIを開発すると、「とってもヘンテコな形のAPIを用意しちゃうこともある」っていうことだよね?

そうだね。

それってAPIを呼び出す側としては、ちょっと使いづらいよね。だって、APIを呼び出すときの条件指定方法もまったく違うかもしれないし、APIを呼び出したあとに取得できる結果もまったく違うってことだもんね。

あぁ、ことりん君が言いたいことが分かったよ。ことりん君が話しているのは、ちょっと極端な例だけど、確かに「こういうルールでAPIを作っています」といったものがないと、利用するAPIそれぞれの仕様をきちんと把握しなければいけなくなってしまうから、とても大変じゃないの?ってことだよね?

そうそう!それが言いたかったの!

なるほどね。よく理解したよ。そういう意味であれば、APIにも一定のルールは存在するんだよ。

そうなんだ!

うん。REST (レスト)っていう考え方があるんだ。RESTの設計思想に沿って開発されたAPIをREST-APIと呼ぶんだ。

RESTってどういうものなの?

RESTには、いくつかの原則があるんだ。一例をあげると以下のようなものだよ。

APIのアドレスをみればどういった処理をしたいのか分かるようになっていること
ステートレスであること(状態を管理しないこと)
情報の内部に別の情報を保持できること
情報の操作にはHTTPメソッド(GET/POST/PUT/DELETE)を利用すること

ちょっと難しいね…。

内容については詳しく理解する必要はないから、「こんなルールがあるんだな」という程度でいいと思うよ。

うん。そうするよ。大事なのは「RESTという一定のルールで開発されているから、基本的なAPIの扱い方は、共通的なものになる」って感じだよね?

そうそう。REST-APIに準拠しているということは、仕様の大枠は同じようなものだから開発者としてはかなり楽になるんだ。

ジャバード先生、ありがとう!REST-APIのことはよく理解できたよ!

はーい!良かったね!

REST-APIとは?採用に役立つ基礎知識

RESTとは、REpresentational State Transferの略でAPIに関する設計思想の1つです。RESTの原則に従って開発されたAPIをREST-APIといいます。RESTful APIと呼ばれることもあります。

REST-APIを活用することで、さまざまな組織や企業が用意した機能を、簡単に活用することができます。たとえば、Webサイトでよく目にするGoogle Mapも、Google社が用意したREST-APIを利用して表示しています。

REST-APIを使うエンジニア

 REST-APIを使うのは、サーバーサイド(バックエンド)エンジニアネイティブアプリエンジニアなどのエンジニアが挙げられます。

REST-APIを使うエンジニアの特徴と在籍業界

REST-APIは、APIを実装するにあたってスタンダードな考え方の1つです。現在、インターネットで公開されているAPIの多くは、REST-APIの設計思想に基づいているといっても過言ではありません。

そのため、REST-APIを使うエンジニアに共通する特徴などはありません。また、REST-APIを使うエンジニアが多く在籍する業界としても、特定のものはありません。

採用する時に知っておくとよいこと

REST-APIの実現方法

REST-APIは設計思想であるという点については、前述のとおりです。では、REST-APIに沿ったものはどうやって実現されているのでしょうか。

方法は1つではありませんが、もっとも簡単な方法はさまざまなプログラミング言語で用意されているフレームワークを利用する方法です。

たとえば、PythonでREST-APIにそったものを開発する場合はDjango REST framework、RubyであればRuby Grapeなどが有名です。

求人のポイント

求人を作成する時は、下記の内容を求人に入れるとよいです。

1システム(サービス)の詳細
※特にそのシステム(サービス)をなぜ作っているのかを熱量をもって記載する。
2開発環境
3現在のエンジニア組織の体制
4現行システムの課題と募集の背景
5求められる業務と期待値
6エンジニアとしてのスキルアップ支援制度の有無と詳細
7エンジニアチーム内での相互成長のための仕組み(勉強会やLT会など)の有無と詳細
8選考フロー
9待遇
10キャリアパス

豆知識

REST-APIに関連するサービス

さまざまな組織や企業のAPIが、REST-API形式で開発・運用されています。ここではRES-APIの例を紹介します。

行政API (中央省庁)

中央省庁は、さまざまな情報をREST-APIで提供しています。一例をあげると、内閣府が提供しているRESAS-APIでは、産業構造や人の流れなどを取得可能です。

また、デジタル庁はマイナポータルとの連携を可能にするぴったりサービス申請API、国税庁は法人番号を検索できるAPIなどを公開しています。

参考:行政API

Google API (Google)

誰もが知っているGoogleも、さまざまなREST-APIを提供しています。具体的には、Google Mapをはじめ、YouTube関連、検索関連、機械学習、ストレージ、ネットワークなどです。

参考:Google APIs

REST-API関連のイベント

REST-APIに関するイベントとしては、以下のようなものがあります。

API World

公式サイトの言葉を借りると、API Worldは「世界最大かつ最も長く実行されているAPIとマイクロサービスのイベント」とのことです。2022年で10年目を迎えるこのイベントは、世界中から何千人ものエンジニアなどが参加します。

API Worldは、その名前のとおりAPIに関するさまざまなコンテンツが用意されています。イベントの中で、REST-APIに関する学習やセッションが実施されることがあります。

参考:API World

API CONFERENCE

API CONFERENCEも、APIに関する国際的かつ大規模なイベントです。

このイベントでは、APIに関する最新トレンド、API開発をリードするエンジニアによるスピーチ、その他ワークショップなどが実施されます。

参考:API CONFERENCE

関連記事

  1. Redis

  2. RDS

  3. Hyper-V

  4. MVC&MVVM

  5. CDN

  6. Backlog