← AI実務ナビ トップへ

API連携って何?AIと一緒に外部サービスのデータを取得してみた

PR本記事はアフィリエイト広告(プロモーション)を含みます。紹介する商品・サービスの選定基準や体験談は編集部の見解に基づきます。

この記事を読むと何ができるようになるか

  • 「API連携」という言葉が指しているものを、専門用語を使わずに理解できます
  • 無料公開されている天気予報APIを使い、前回学んだターミナル操作でデータを実際に取得する体験ができます
  • 自分でも似たようなことを試すためのプロンプト例が3つ手に入ります

前回の記事「ターミナル(コマンドライン)は怖くない」では、黒い画面(ターミナル)で基本的なコマンドを打つ体験をしました。今回はその応用として、エンジニアがよく口にする「API連携」という言葉の意味を、実際に外部サービスのデータを取得しながら理解してみます。

そもそもの疑問: 「API連携」って結局何をすること?

まずは率直な疑問をAIにぶつけてみました。

自分: 「API連携」という言葉をよく聞きますが、結局何をしていることなんですか?プログラミングの知識がなくてもわかるように教えてください。

AI: APIとは、簡単に言うと「あるサービスが、自分の持っているデータや機能を、決まったルールで外部に提供するための窓口」です。飲食店の券売機に例えると、券売機に決まったボタン(注文)を押すと、決まった形式の食券(データ)が出てくるイメージに近いです。「API連携」は、その窓口を使って、自分のプログラムから別のサービスのデータを取りに行ったり、機能を呼び出したりすることを指します。

「決まったボタンを押すと、決まった形式のものが返ってくる窓口」という例えで、漠然としていたイメージが具体的になりました。

💡 ポイント: APIを難しく考えず、「決まった書き方でお願いすると、決まった形式でデータが返ってくる窓口」とイメージすると、専門用語の壁がぐっと下がります。

今回使うもの: 無料で使える公開APIと、前回のターミナル

今回は、Open-Meteoという、登録やAPIキーの取得なしで無料で使える天気予報APIを題材にします。Open-Meteoは非商用利用であればアカウント登録不要で使える公開APIとして提供されており、初めてAPIに触れる題材として扱いやすいサービスです。

自分: Open-MeteoというAPIを使って、東京の今の気温を取得したいです。何を用意すればいいですか?

AI: Open-Meteoはアカウント登録やAPIキーの取得が不要なので、特別な準備は要りません。前回使ったターミナルで、決まった形式の「URL」にアクセスするだけでデータを取得できます。URLの中に、「どこの場所か(緯度・経度)」「何の情報がほしいか(気温など)」を指定します。

「特別な契約や登録がなくても試せる」という点で、最初の題材として安心して取り組めそうだと感じました。

AIに、実際に使うURLを組み立ててもらう

自分: 東京(緯度35.6895、経度139.6917)の、今の気温・湿度を取得するURLを、Open-Meteoの公式ドキュメントの書き方に沿って作ってください。

AI: 以下のURLで取得できます。

https://api.open-meteo.com/v1/forecast?latitude=35.6895&longitude=139.6917&current=temperature_2m,relative_humidity_2m,weather_code

latitudelongitudeが場所(緯度・経度)、currentのあとに指定しているのが「今、知りたい情報の種類」(気温・湿度・天気コード)です。このURLをブラウザにそのまま貼り付けても、結果を確認できます。

言われた通りブラウザにURLを貼り付けてみると、文字だけの画面に、気温や湿度などの数値がずらっと並んだ結果(JSON形式と呼ばれるデータの形)が表示されました。

全体の流れ(図解)

①AIに「取得したい情報」を伝える(場所・知りたいデータの種類)


②AIがOpen-Meteoの書き方に沿ったURLを組み立ててくれる


③ブラウザ、またはターミナルの`curl`コマンドでそのURLにアクセスする


④APIから、決まった形式(JSON)でデータが返ってくる


⑤中身をAIに読んでもらい、人間にわかりやすい文章に直してもらう

実際の手順: ターミナルからAPIにアクセスしてみる

  1. Open-Meteoの公式サイトにアクセスし、無料で使えるAPIであることを確認する
  2. 前回の記事で使ったターミナルを開く
  3. 上記のプロンプト例のようにAIへ「取得したいURL」を組み立ててもらう
  4. ターミナルでcurlに続けてそのURLを入力し、Enterキーを押す(例: curl "https://api.open-meteo.com/v1/forecast?latitude=35.6895&longitude=139.6917&current=temperature_2m,relative_humidity_2m,weather_code")
  5. 画面に、数値がずらっと並んだ文字の羅列(JSON形式のデータ)が表示される
  6. その結果をそのままAIに貼り付け、「これは何を意味していますか」と読み解いてもらう

実際にやってみると、curlというコマンド自体は「このURLの中身を取ってきて表示して」という指示を出しているだけで、前回学んだlscdと同じように、決まった書き方を覚えれば扱えるものだと感じました。

⚠️ 注意: 無料公開APIの中には、利用回数の上限(1日あたりのアクセス回数など)や、商用利用の可否についての規約が定められているものがあります。実際に使う際は、必ず公式サイトの利用規約・料金ページを確認してください。

結果をAIに読み解いてもらう

取得したJSON形式のデータは、そのままでは数値と記号が並んだだけの見た目で、パッと見て意味を理解するのは簡単ではありません。そこで、結果をそのままAIに貼り付けてみました。

自分: 次のデータが返ってきました。これはどういう意味ですか?人間にわかりやすく教えてください。

[取得したJSON形式のデータをそのまま貼り付け]

AI: このデータは、東京の現在の気温が◯◯度、湿度が◯◯%であることを示しています。「weather_code」という数値は天気の状態を表すコードで、晴れ・曇り・雨などの状態が数字で分類されています。

数字や記号の羅列だったものが、AIに読み解いてもらうことで、意味のある文章としてすっと理解できるようになりました。

💡 ポイント: APIから返ってくるデータ(JSON形式)は、人間がそのまま読むには不向きな見た目をしています。取得すること自体よりも、「取得したデータをAIに読み解いてもらう」という組み合わせが、非エンジニアにとって実用的な使い方になります。

AIに相談するためのプロンプト例(3つ)

プロンプト例(取得したいデータのURLを組み立ててもらう場合):

[使いたい公開API名]を使って、[知りたい情報、例: 東京の今の気温]
を取得したいです。アカウント登録やAPIキーが不要な範囲で、
公式ドキュメントの書き方に沿ったURLを教えてください。

プロンプト例(取得結果を読み解いてもらう場合):

以下は、APIから取得したデータです。プログラミングの知識が
ない人にもわかるように、何を意味しているか説明してください。

[取得したデータをそのまま貼り付け]

プロンプト例(エラーが出たときに原因を確認してもらう場合):

ターミナルで次のコマンドを実行したら、エラーが表示されました。
初心者にもわかるように、原因と対処法を教えてください。

実行したコマンド: [ここに書く]
表示されたエラー: [ここにそのまま貼り付け]

💡 ポイント: 「取得できた」ことよりも「取得したデータの意味を理解できた」ことの方が実務では重要です。データを貼り付けて解説してもらう使い方は、API連携の理解を深めるうえで特に役立ちます。

まずはここから: 最初の一歩

  1. Open-Meteoの公式サイトにアクセスし、アカウント登録が不要な無料APIであることを確認する
  2. 上記のプロンプト例を使い、自分の住んでいる場所の天気を取得するURLをAIに組み立ててもらう
  3. まずはブラウザにそのURLを貼り付けてみて、結果が表示されることを確認する
  4. 慣れてきたら、前回の記事で用意したターミナルからcurlコマンドで同じURLにアクセスしてみる
  5. 取得した結果をAIに貼り付け、意味を読み解いてもらう

使用例: 家庭菜園が趣味の森田さんのケース

家庭菜園を趣味にしている森田さんの例です。森田さんは、天気予報アプリを見て水やりのタイミングを判断していましたが、「毎回アプリを開くのが手間で、自分の畑がある地域の細かい降水確率だけをさっと確認したい」と感じていました。

  1. まず「取得したいデータのURLを組み立ててもらう」プロンプトを使い、自分の畑がある地域の緯度・経度を伝えて、降水確率を取得するURLを作ってもらいました
  2. 前回学んだターミナルでcurlコマンドを使い、そのURLからデータを取得しました
  3. 取得したJSON形式のデータをそのままAIに貼り付け、「明日の降水確率は何%か」を人間の言葉で説明してもらいました
  4. 数値だけを見て自分で判断するより、AIに要点だけ教えてもらう方が確認が早いと感じ、水やり前の習慣にすることにしました

森田さんいわく、「アプリを開いて何度もタップして探していた情報が、AIに一言聞くだけで済むようになったのは楽になった」とのことでした(これは森田さんの体感であり、当社が効果を計測した数値ではありません)。

Before/After: 「API連携」への理解の変化

項目 AIと一緒にやってみる前 やってみた後
APIのイメージ 「エンジニアが使う難しい専門用語」 「決まった書き方でお願いすると、決まった形式でデータが返ってくる窓口」
取得結果への向き合い方 数値や記号の羅列を見ても意味がわからなかった AIに読み解いてもらうことで意味のある情報として理解できる
ターミナルとのつながり 前回学んだコマンドが何に使えるのかイメージできていなかった curlコマンドでAPIにアクセスするという具体的な使い道がわかった

※上記は一般的に想定される理解度の変化の整理であり、当社が数値として計測したものではありません。

気をつけたいこと

  • 無料公開APIには、利用回数の上限や商用利用の可否についての規約が定められていることがあります。契約前・利用前に必ず公式サイトで最新の利用規約を確認してください
  • 個人情報や機密性の高い情報をAPI経由でやり取りする場合は、通信内容の扱いについて、より慎重な確認が必要になります。本記事で扱ったのは、個人情報を含まない公開データ(天気予報)に限定しています
  • APIの提供内容(URLの書き方、取得できる項目)は、サービス側の都合で変更されることがあります。うまく取得できない場合は、公式ドキュメントの最新情報を確認してください

⚠️ 注意: 本記事で紹介した内容は、あくまで「API連携という概念を体験する」ことを目的にした、無料・登録不要の範囲での例です。実際の業務でAPIを使う場合は、利用規約・セキュリティ・データの取り扱いについて、より踏み込んだ確認が必要になります。

よくある質問

Q. API連携にはプログラミングの知識が必要ですか? 本記事で紹介した「決まったURLにアクセスしてデータを取得する」というレベルであれば、プログラミングの専門知識がなくても体験できます。取得したデータを本格的に活用する場合は、別途プログラムを組む知識が必要になる場面も出てきます。

Q. 無料で使えるAPIは他にもありますか? 本記事で扱ったOpen-Meteoのように、アカウント登録なしで試せる公開APIは他にも存在します。ただし提供内容や利用条件はサービスごとに異なるため、それぞれの公式サイトで確認することをおすすめします。

Q. 次は何をすればいいですか? 本記事で紹介した「外部からデータを取得する」体験は、以前公開した「作ったものを世界に公開する「デプロイ」を、AIと一緒にやってみた」の回にもつながる、一連の非エンジニア向けAI活用体験の1つです。まだご覧になっていない場合は、あわせてご覧ください。

まとめ

「API連携」とは、「決まった書き方でお願いすると、決まった形式でデータを返してくれる窓口」を使うことだと理解すると、専門用語の壁がぐっと下がります。無料公開されているAPIと、前回学んだターミナル操作を組み合わせるだけで、非エンジニアでも「外部サービスのデータを実際に取得できた」という成功体験を得られます。取得したデータはそのままでは読みづらい形式のことが多いので、AIに読み解いてもらう組み合わせもあわせて試してみてください。

関連する実務ガイド

編集部の実体験メモ

当社は外部サービスとのAPI連携を開発の中で日常的に扱っていますが、本記事の著者はプログラミングの専門教育を受けたエンジニアではありません。前回の記事でターミナルの基本操作に慣れたところから、今回は無料公開されている天気予報APIを題材に、AIに手伝ってもらいながら外部サービスのデータを実際に取得してみた過程をそのまま記事にしています。