「Scratch APIって何?」「作った作品のデータや、ユーザーの情報をプログラムで取り出せるって本当?」と気になって、この記事を開いた方も多いと思います。
先に結論を書くと、Scratchのサイトには、誰でも見られる公開データ(ユーザーのプロフィールや、作品の情報など)を、URLにアクセスするだけで取り出せる仕組みがあります。それがScratch APIと呼ばれているものです。ブラウザのアドレス欄にURLを入れるだけでも、中身を見られます。
ただし、この仕組みは公式に細かく説明されていない部分があり、仕様が変わることもあります。そのため、この記事では「確実に言える範囲」と「変わるかもしれない範囲」を分けて、順番に説明します。
✅この記事でわかること👇
- Scratch APIとは何か、何ができて、何ができないのか
- ブラウザだけで試せる、ユーザー情報・作品情報の取り出し方
- PythonやJavaScriptから使う、短いコードの例
- 使うときの注意点(回数の制限・個人情報・仕様の変更)
- 古い情報を見つけたときの、確かめ方

Scratch APIとは?できることと基本概要を解説
ここでは、APIという言葉の意味、Scratch APIで何ができるか、使う前に知っておきたい注意点を説明します。むずかしい言葉は、そのつど短く言い換えます。
Scratch APIの基本構造と仕組みを初心者向けに紹介
API(エーピーアイ)とは、Application Programming Interfaceの略で、あるソフトの機能やデータを、別のプログラムから使うための窓口のことです。レストランにたとえると、お客さん(自分のプログラム)が、店員さん(API)に注文を伝えると、厨房(Scratchのサーバー)から料理(データ)が運ばれてきます。お客さんは厨房の中を知らなくても、注文のしかたさえ分かれば料理を受け取れます。
Scratch APIを使うと、ユーザーのプロフィールや、公開されている作品の情報(タイトル、説明、いいねの数など)を、プログラムから取り出せます。学習の記録を整理したり、人気の作品を一覧にしたりと、ScratchのWebサイトを見るだけではやりにくい使い方が広がります。
仕組みの基本は、とても単純です。決まったURLにアクセスすると、JSON(ジェイソン)という形式の文字列でデータが返ってくるというものです。JSONは、「名前: 値」の組み合わせを並べた、人にも機械にも読みやすい書き方です。
Scratch APIの仕組みと主な活用シーン
API利用でよく使われるリクエスト(データの要求)には、次の4種類があります。
- GET:データを取得する
- POST:新しいデータを送る
- PUT:すでにあるデータを更新する
- DELETE:データを削除する
これは、APIというものの一般的な決まりです。ただし、この記事で扱うのは、誰でも見られる公開データを読み取る「GET」だけです。データを書き換えたり消したりするには、ログインした本人であることの確認が必要になります。アカウントを守るためにも、初心者のうちは試さないほうが安全です。
公開データの読み取りでできることの例です。
- 教室や家庭での記録づくり:自分や教室のアカウントが公開している作品を、一覧にして見やすく整理する
- ランキングづくり:公開されている作品の「いいね」や「見た回数」を集めて、並べ替えて表示する
- ユーザーの活動の確認:自分のアカウントの公開作品の数などを、定期的に確認する
こうした使い方は、「できる可能性がある」という範囲の話です。実際に何が取り出せるかは、Scratch側の仕様に左右されます。
Scratch 2.0 APIと3.0 APIの違いを比較解説
検索すると、「Scratch 2.0 API」「Scratch 3.0 API」という言葉を見かけることがあります。ただ、これらはScratchのエディター(作品を作る画面)の版である2.0と3.0の名前と混ざって使われている呼び方のようで、公式がAPIの版を2.0用・3.0用と分けて案内しているのかは、確認できていません。
そのため、この記事では、2.0用・3.0用と分けて説明しません。現在使われている「api.scratch.mit.edu」から始まるURLだけを扱います。
古い記事に載っているURLや書き方は、すでに使えなくなっていることがあります。見つけたときは、そのまま使わずに、次の順で確かめると安心です。
- URLをブラウザのアドレス欄に貼って、データが表示されるか確かめる
- エラーが出たら、記事の公開日を確認する(古いほど、仕様が変わっている可能性が高い)
- それでも分からなければ、Scratchの公式のヘルプやフォーラムで、現在の状況を確認する

Scratch APIを使うメリットと実践活用例
Scratch APIを使うよさは、手作業をプログラムに任せられる点です。
- データを自動で取得できる:ユーザーや作品の情報を、1件ずつ画面で開かなくても取り出せる
- ほかの道具とつなげられる:取り出したデータを、表計算ソフトや自作のページに表示できる
- 数字を見比べやすい:公開作品の数や、いいねの数などを、まとめて確認できる
たとえば、次のような小さな作品づくりが考えられます。
- 自己紹介ページ:自分のScratchのユーザー名を入れると、公開作品の数などが表示されるページ
- ランキング表:気になる作品のIDを何個か入れて、いいね数の順に並べる表
- 活動メモ:週に1回、自分の作品の見られた回数を記録していく表
プログラミング教育については、文部科学省がホームページで情報を公開しています。学校での取り組みや最新の方針を知りたいときは、公式サイトで確認してみてください。👉文部科学省 公式サイト
Scratch APIを利用する際の注意点と安全な使い方
Scratch APIを使うときは、3つのことに気をつけてください。
1つ目は、リクエストの出しすぎです。短い時間に大量のアクセスを送ると、サーバーに負担がかかり、アクセスを止められる可能性があります。何件も取得するときは、1回ごとに少し待つ(1秒以上あけるなど)ようにして、必要なぶんだけ取得しましょう。
2つ目は、プライバシー(個人情報)の保護です。公開されているデータでも、特に子どものアカウントの情報を集めて保管したり、ほかの人に見せたりするのは、避けたほうがいいです。自分や、保護者・本人の許可を得たアカウントのデータに限って使いましょう。
3つ目は、仕様の変更です。この仕組みは、公式に細かい説明が整っているわけではないため、突然URLや返ってくる項目が変わることがあります。動かなくなったときは、まずURLをブラウザで開き直して、データが返るか確かめましょう。また、Scratchの利用規約やコミュニティのガイドラインも、使う前に一度確認してください。

Scratch APIを使ったプロジェクト活用法まとめ
ここからは、実際に手を動かす部分です。ブラウザだけで試す方法から始めて、プログラムから使う方法まで、順番に進めます。
Scratch APIの取得方法と設定手順を詳しく解説
「APIを取得する」といっても、アカウント登録やキーの発行は、公開データを読むだけなら基本的に必要ないようです(変わる可能性はあります)。手順は次の4つです。
取り出したいデータのURLを決める
データごとに、URLが決まっています。この記事で扱うのは、次の2つです。
- ユーザー情報:
https://api.scratch.mit.edu/users/ユーザー名 - 作品の情報:
https://api.scratch.mit.edu/projects/作品のID
作品のIDは、作品ページのURL(https://scratch.mit.edu/projects/数字/)の、数字の部分です。
まずブラウザで開いてみる
特別な道具は要りません。上のURLを、ブラウザのアドレス欄に貼って開くだけです。文字がずらっと表示されれば成功です。表示が見づらいときは、ブラウザの拡張機能などで整形すると見やすくなります。
プログラムから呼び出す
プログラムから使うときは、HTTPリクエストを送れる道具を用意します。よく使われるのは次の3つです。
- Postman:画面からリクエストを作って送れるソフト
- cURL:コマンドで送るツール
- Pythonのrequestsライブラリ:Pythonのプログラムから送るための部品
認証について
公開データの読み取りでは、APIキーを取得する手順は特に案内されていません。一方で、非公開の情報や、データの変更には、ログインの確認が必要になります。この記事の範囲では、扱いません。

Scratch APIでユーザー・プロジェクトデータを取得する方法
データを取り出すときは、基本的にGETリクエストを使います。ブラウザでURLを開くのも、じつはGETリクエストです。
ユーザー情報を取得する
GET https://api.scratch.mit.edu/users/{username}
{username}の部分を、調べたいユーザー名に置き換えます。たとえば、ユーザー名が「example」なら、次のようになります。
GET https://api.scratch.mit.edu/users/example
返ってくるJSONには、ユーザー名、ユーザーID、参加した日などの項目が含まれます。どんな項目が入っているかは、実際に開いて確かめるのがいちばん確実です。
作品の情報を取得する
GET https://api.scratch.mit.edu/projects/{project_id}
{project_id}を、作品のIDに置き換えます。たとえば、IDが「123456789」の作品なら、次のようになります。
GET https://api.scratch.mit.edu/projects/123456789
返ってくるJSONには、タイトル、説明、作者の情報、いいねや見られた回数などの項目が含まれていることが多いです。ただし、項目の名前や並び方は変わることがあります。
Pythonで取得してみる
Pythonを使うと、取得したデータを、プログラムの中で自由に扱えます。次は、ユーザー情報を表示する短い例です。
import requests
url = "https://api.scratch.mit.edu/users/ユーザー名"
response = requests.get(url)
if response.status_code == 200:
data = response.json()
print(data)
else:
print("取得できませんでした", response.status_code)
ポイントは、response.status_codeが200のときに成功、という点です。200以外が返ってきたら、ユーザー名の間違いか、サーバー側の変更などが考えられます。エラーの番号は、原因を探す手がかりになります。
JavaScriptなら、次のように書けます。
fetch("https://api.scratch.mit.edu/users/ユーザー名")
.then(res => res.json())
.then(data => console.log(data));
ブラウザの開発者ツール(多くのブラウザでF12キーで開きます)のコンソールに貼ると、結果を確かめられます。ただし、別のサイトの上で実行すると、ブラウザの安全のしくみ(CORS)で止められることがあります。うまくいかないときは、PythonやcURLで試してみてください。

Scratch APIの簡単な活用例|初心者でもできる実装
初心者でも作りやすい例を、3つ紹介します。いずれも、公開データを読むだけで作れます。
- ユーザープロフィールの表示:ユーザー名を入れると、公開されている情報を一覧で表示する
- 作品ランキング表:気になる作品のIDを数個並べて、いいね数の順に表示する
- 記録用のメモ:1週間に1回、自分の作品の数字を取得して、表にためていく
最初は、「1件だけ取得して、画面に表示する」ところまでで十分です。そこから、「複数件を取得する」「並べ替える」「表にする」と、少しずつ広げていくと、無理なく進められます。
Scratch APIの応用活用|高度なカスタマイズ例
基本に慣れたら、次のような使い方に進めます。
- 自分用のダッシュボード:作品の数字を、グラフや表でまとめて見られるページを作る。毎日の変化を記録すると、どの作品がよく見られているかが分かります。
- 活動の記録と振り返り:公開した作品の数や、いいねの変化を、日付つきで保存する。1か月分たまったら、振り返りに使えます。
- ほかのサービスとの連携:取得したデータを、表計算ソフトなどに送って、集計や並べ替えを任せる。
どれも、取得したデータをどう使うかの工夫です。うまく動かない場合は、まず「1件だけ取得できているか」に戻って確認するのが近道です。また、取得の回数は必要最小限にして、サーバーに負担をかけないようにしましょう。

まとめ|Scratch APIを使ってできることと今後の可能性
この記事のポイントをまとめます。
- Scratch APIは、公開されているユーザー情報や作品情報を、URLにアクセスして取り出せる仕組み
- 返ってくるデータは、JSONという形式で、ブラウザでも見られる
- この記事で扱うのは、データを読む「GET」だけ。書き換えは扱わない
- URLは、ユーザー情報(users)と作品情報(projects)が基本
- 短時間に大量のアクセスをしない。1回ごとに少し待つ
- 子どもの情報の扱いには特に気をつけ、本人や保護者の許可を得たものだけを使う
- 仕様は変わることがある。動かないときは、URLをブラウザで開いて確かめる
- 古い記事の情報は、そのまま信じず、自分の環境で確かめる
まずは、ブラウザで自分のユーザー情報を開いてみるところから始めてみてください。データが表示されれば、APIの仕組みが体で分かります。そこから、Pythonなどで少しずつ広げていくと、無理なく進められます。
関連記事もチェック!
Scratchでの作品づくりや、動作の高速化についても、合わせて読んでみてください👇
🔗 Scratch ターボワープで高速化!初心者向けの使い方と注意点
Scratchの作品を速く動かすための、TurboWarpという別のエディターについて解説しています。
🔗 Scratchでアモングアスを作る!初心者向け完全ガイド
人気ゲームをScratchで作る方法を紹介しています。作品づくりの練習に向いています。
🔗 Scratchの日本語プログラミングで学ぶ初心者向けの使い方と活用法
日本語版Scratchで、プログラミングの基本から学べる記事です。APIの前に基礎を固めたい方に向いています。
🔗 Scratchのクラウド変数とは?使い方と制限をやさしく解説!
Scratchの中で、インターネット経由でデータを保存する別の仕組みを解説しています。

