「APIって何?」と聞かれたとき、半年前の僕は何も答えられなかった。
いや、正確に言えば「Application Programming Interfaceの略です」とは言えた。でもそれは、意味を理解しているのではなく、検索結果の1行目を暗唱しているだけだった。プログラミング未経験からAIを活用した仕事を始めて、最初にぶつかった壁がこの3文字だった。
調べれば調べるほど、わからなくなる
Googleで「API とは」と検索すると、丁寧な解説記事がたくさん出てくる。でも読み進めると、RESTだのエンドポイントだのJSONだの、知らない単語がさらに増えていく。ひとつ調べると、その説明の中にまた知らない言葉がある。辞書で調べた言葉の意味が、別の辞書を引かないとわからないような感覚。
技術ブログを読むと、冒頭に「APIは簡単です!」と書いてある。でも3段落目にはもうコードが出てくる。「簡単」の定義が違いすぎる。画面の前で「自分には無理かもしれない」と思いかけた夜が、一度や二度ではなかった。
レストランで腹落ちした
転機は、意外にも食事中に訪れた。
ある日、友人とレストランに行った。メニューを開いて、パスタを注文して、しばらくしたら料理が出てきた。当たり前の流れだ。でもふと気づいた。僕はキッチンの中を一切見ていない。シェフがどんな手順で調理しているかも知らない。知らなくても、メニューに「カルボナーラ」と書いてあって、それを注文すれば、カルボナーラが出てくる。
これがAPIだ。
キッチンはシステムの中身。メニューがAPI。僕たち客はメニューを通じて注文(リクエスト)するだけで、料理(データや処理結果)を受け取れる。キッチンの中でオリーブオイルが何cc使われているかなんて、知る必要がない。
もう少し正確に言えば、店員さんがAPIの仲介役だ。客の注文をキッチンに伝えて、出来上がった料理を客に届ける。客がキッチンに直接入り込む必要はない。むしろ入ったら迷惑だ。APIは、システムの内部を触らせずに、必要な機能だけを外から使えるようにしてくれる「窓口」なのだ。
この例えを思いついた瞬間、霧が晴れるように一気に理解できた。今まで読んだ技術記事の内容が、急に意味を持ち始めた。
LINEのボットが返事をした日
理解と実践は違う。本当にわかったと言えるのは、自分で使ってみた後だ。
最初に触ったのはLINE Messaging APIだった。友人の居酒屋のシフト管理ツールを作るためだ。LINE公式アカウントを作り、APIの設定をして、Google Apps Scriptで簡単なコードを書いた。やったことは、LINEに「メッセージが届いたら、こう返して」という指示を出しただけ。
自分のスマホからテストメッセージを送った。2秒後、ボットが返事をしてくれた。
画面に表示されたのはたった一行のテキストだったけれど、僕は声を出して笑ってしまった。自分が書いた指示が、LINEのシステムの中を通って、目の前のスマホに届いている。レストランのメニューで注文したら、ちゃんと料理が出てきた。あの感覚だった。
そこからは芋づる式だった。Google Apps Scriptでスプレッドシートに書き込むのも、Googleマップから位置情報を取得するのも、全部「APIに注文を出す」という同じ構造だった。プログラミングを体系的に学んだわけじゃない。でも、APIをつなげるだけで、実際に動くツールが作れた。
非エンジニアがAPIを理解する4つのコツ
半年間の試行錯誤で見つけた、非エンジニアなりの学び方を書いておく。
1. 「何ができるか」から入る
仕様書を最初から読まない。まず「このAPIを使うと何ができるのか」だけを把握する。LINE APIなら「ボットからメッセージを送れる」。それだけ知っていれば、最初の一歩は踏み出せる。
2. 完璧に理解しようとしない
レストランのメニューの裏側にあるレシピを全部知らなくても、注文はできる。APIも同じだ。内部の仕組みを100%理解してから使おうとすると、永遠に使い始められない。70%の理解で手を動かした方が、100%の理解を目指して止まっているよりずっと進む。
3. ノーコードツールで体験する
MakeやZapierなどのノーコードツールを使えば、コードを書かなくてもAPIの連携を視覚的に体験できる。「このサービスのデータを取って、あのサービスに渡す」という流れが、ドラッグ&ドロップで見える。理屈より先に体で覚えた方が早い。
4. エラーを恐れない
レストランで注文を間違えても、怒られはしない。「すみません、やっぱりこっちで」と言えばいい。APIも同じだ。間違ったリクエストを送っても、壊れるものは何もない。エラーメッセージは「注文を聞き取れませんでした」と言っているだけ。やり直せばいい。
「わからない」がスタートライン
APIを理解してから、僕の世界は明らかに広がった。誰かの業務上の困りごとを聞いたとき、以前は「大変ですね」としか言えなかった。今は「あ、それ、このAPIとこのAPIをつなげれば解決するかもしれない」と自然に考えられるようになった。
そして、非エンジニアだからこその強みもあると気づいた。技術に詳しくないからこそ、使う人が何に困っているかがわかる。「このボタンの意味がわからない」という感覚を、自分自身が経験しているからだ。
「わからない」は恥ずかしいことじゃない。それは、理解への最短距離にいるということだ。
半年前、APIの3文字に怯えていた僕が今こうして記事を書いている。もし同じように「APIってなんだかわからない」と感じている人がいたら、とりあえずレストランに行ってみてほしい。メニューを開いて注文するとき、「あ、これがAPIか」と思えたら、もうあなたは理解している。