
【API】【2024年度版】note非公式API完全ガイド
ようこそ!note APIの世界へ
このガイドでは、noteの非公式APIについて初心者にもわかりやすく、実践的な内容をお届けします。
開発経験が浅い方でも使えるように、基礎知識から具体例まで、すべてを詰め込んだ"完全版"です。
誰のための記事?
このガイドは、以下のような方におすすめです。
note APIを使ったアプリやスクリプトを作りたいエンジニア
データ分析や自動化に興味があるデータアナリスト
APIでnoteをもっと便利に使いたいクリエイター
このガイドで得られること
APIの基礎知識を理解できる
note APIのエンドポイントを使いこなす方法を学べる
実際の開発に役立つサンプルコードとTipsを活用できる
GASを有料記事として公開しております。
GASとはという方は👇️
簡単にお伝えすると、Googleアカウントをお持ちの方であれば「誰でも」「無料」で使えるクラウドのスクリプト機能です。
注意点
非公式APIのため、突然の仕様変更やサービス停止があり得ます。
過剰なリクエストはサーバーに負担をかけるため、利用には節度が必要です。
コンテンツ概要
以下の流れで解説を進めます。
APIとは何か?
APIの基本概念や仕組みを初心者向けに解説。
HTTPメソッドとステータスコード
開発時に必須となる基礎知識とnote API特有の挙動。
note APIバージョン一覧
バージョンごとの違いと進化を解説。
note APIの主要機能
各カテゴリ別のエンドポイントやサンプルを網羅。
実用例
「記事一覧の取得」「ダッシュボードPVデータの可視化」などの具体例を実装。
注意点と今後の可能性
note APIの課題と未来を考察。
さらにこの記事では、有料記事として以下を提供予定です:
ダウンロード可能なサンプルコード:コピペで即使えるテンプレート。
API活用事例集:ユニークで実践的なアイデア。
1. APIとは何か?
**API(Application Programming Interface)**は、アプリケーション同士が情報をやり取りするための仕組みです。
たとえば、アプリが特定の機能を提供する「窓口」のような役割を果たします。
APIの基本概念
リクエストとレスポンス
クライアント(利用者側)がAPIサーバーにリクエストを送る。
サーバーがそれに応じてレスポンス(情報)を返す仕組み。
例:noteのAPIを使って、記事一覧を取得する。
note APIの実例
リクエスト例:記事一覧を取得
GET https://api.note.com/v1/articles
レスポンス例:JSON形式のデータ
{
"articles": [
{"title": "記事1", "author": "ユーザーA", "views": 123},
{"title": "記事2", "author": "ユーザーB", "views": 456}
]
}
初心者にも直感的に理解できる仕組みです。
2. HTTPメソッドとステータスコード
APIを利用する際には、HTTP通信の基本を理解する必要があります。
HTTPメソッド
note APIでよく使うメソッドは以下の3つです:
GET: データを取得(例:記事一覧の取得)。
POST: データを新規作成(例:新しい記事の投稿)。
DELETE: データを削除(例:特定のマガジンを削除)。
ステータスコード
APIのレスポンスには、リクエストの結果がステータスコードで表されます:
200 OK: リクエスト成功。正常なレスポンスが返る。
403 Forbidden: アクセス権限がない。
500 Internal Server Error: サーバー側のエラー。
note APIを扱う上で、これらのコードの意味を把握しておくとエラー解決がスムーズになります。
3. note APIバージョン一覧
noteの非公式APIは、定期的に進化しています。本セクションでは、過去から現在までのバージョンの違いを整理します。
主なバージョンと特徴
v1: 初期のバージョン。基本的な機能(記事取得など)のみ対応。
v2: より多機能に。マガジンやタグ関連のエンドポイントが追加。
v3: 最新版。ダッシュボードデータや通知の取得も可能に。
エンドポイント例
v1: 記事取得
GET https://api.note.com/v1/articles
v2: カテゴリー取得
GET https://note.com/api/v2/categories
4. note APIの主要機能
各カテゴリごとのエンドポイントを具体的に紹介します。
記事
記事一覧の取得: 特定のタグやキーワードに基づいた記事を取得可能。
GET https://api.note.com/v3/articles?tag=tech
実際に抽出したデータ。

5. 実用例
このセクションでは、具体的なコード例を使い、実践的なAPI活用法を紹介します。
例1: 記事一覧をCSVに出力
Pythonを使った簡単なスクリプト例:
import requests
import csv
url = "https://api.note.com/v3/articles"
response = requests.get(url)
articles = response.json()["articles"]
with open("articles.csv", "w") as file:
writer = csv.writer(file)
writer.writerow(["Title", "Author", "Views"])
for article in articles:
writer.writerow([article["title"], article["author"], article["views"]])
6. 注意点と今後の可能性
注意点
非公式APIのため、突然仕様が変わるリスクがある。
リクエスト数が多すぎると、IP制限される可能性あり。
スプレッドシートへ検索キーを基に書き出すスクリプトは👇️
function fetchMoreThanTenArticles() {
const API_ENDPOINT = 'https://note.com/api/v3/searches';
const QUERY = 'サンプル'; // 検索するキーワード
const CONTEXT = 'note'; // 検索コンテキスト
const SIZE = 10; // 一度に取得する記事数 (APIの制限に合わせる)
const MAX_RESULTS = 100; // 最大取得件数
let start = 0; // 開始位置
let allArticles = []; // 全記事を格納する配列
上記のパラメーター部分をサンプル→検索したいワードへ変換、
またMAX_RESULTSを取得したい件数に変更して活用いただけます。
クリエイター別の記事一括取得方法はこちら👇️
ここから先は
この記事が気に入ったらチップで応援してみませんか?