Scrapbox

Scrapbox API 完全ガイド(2026年版)主要エンドポイントと認証方法

ⓘ本ページはプロモーションが含まれています

お得なお知らせ

スポンサードリンク
タイプ別にすぐ選べる

2026年、ビジネス競争力を上げる2ルート

"組織を動かす"立場と"個人スキルを伸ばす"立場では必要な打ち手が違います。自分の役割で選んでください。

▷ 部門・全社でAIリテラシー研修を入れたい管理職・人事・経営層

【Kindle本】イノベーションOps 組織を動かすDX&AI導入プロセスのすべて

▷ 個人のビジネススキル・思考法を"本から"底上げしたい実務担当者

Kindle Unlimited 30日無料|ビジネス書読み放題▶

※積極的な自己学習が成長への近道です

▶ 耳で学ぶビジネススキルなら オーディオブックAudible 。日経BP・東洋経済系の話題作も対象です。


スポンサードリンク

Scrapbox API の概要(2026 年版)

Scrapbox のデータを外部から操作したいときは、REST API を利用します。本稿では 2026 年時点で提供されている主要エンドポイント・認証方法・レートリミットの実装上の注意点を網羅的に解説します。全体像を把握すれば、必要な機能だけを選んで安全かつ効率的に実装できるようになります。


1. 主なエンドポイント一覧

このセクションでは公式ドキュメントに基づく主要エンドポイントを表形式で示し、それぞれの利用シーンを簡潔に説明します。エンドポイントはすべて https://scrapbox.io/api/v2/ プレフィックスが付与されます。

エンドポイント HTTP メソッド 主な用途
/projects/{projectId} GET 指定プロジェクトの基本情報取得
/projects POST 新規プロジェクト作成
/pages/{projectId}/{pageTitle} GET ページ本文(テキスト・リンク)取得
/pages/{projectId} POST ページ新規作成
/pages/{projectId}/{pageTitle} PATCH 既存ページのテキストやメタ情報を更新
/links/{projectId} GET プロジェクト内すべてのリンク一覧取得
/users/me GET 認証中ユーザーのプロフィール取得

ポイント
エンドポイントはプロジェクト ID が必須です。ページタイトルは URL エンコード(encodeURIComponent)して使用してください。


2. 認証方式と取得手順

Scrapbox API を呼び出す際は、必ず Bearer トークンAuthorization ヘッダーに付与します。本章ではトークンの取得方法を二つ紹介し、重複記述を排除してシンプルにまとめます。

2‑1. Personal Access Token(PAT)

最も手軽に利用できる認証手段です。以下の手順で取得できます。

  1. Scrapbox にログイン → 右上メニューの 「設定」「API トークン」 を開く
  2. 「新規トークン作成」 ボタンをクリックし、任意の名前と必要なスコープ(read / write)を選択
  3. 作成されたトークンが画面に表示されるので、コピーして安全な場所に保存

取得したトークンはリクエストヘッダーへ次のように設定します。

2‑2. OAuth2 Authorization Code Grant

外部サービスと連携する場合や、トークンの有効期限管理が必要なシナリオで推奨されます。2026 年版の公式エンドポイントは以下です。

用途 エンドポイント(HTTPS)
認可リクエスト (Authorization) https://scrapbox.io/api/oauth/authorize
アクセストークン取得 (Token) https://scrapbox.io/api/oauth/token

OAuth2 フロー概要

  1. 認可リクエスト
    ユーザーを上記 authorize エンドポイントへリダイレクトし、client_id, redirect_uri, scope, response_type=code を付与。例:

https://scrapbox.io/api/oauth/authorize?client_id=YOUR_CLIENT_ID&redirect_uri=https%3A%2F%2Fyourapp.com%2Fcallback&scope=read+write&response_type=code

  1. 認可コード受領
    ユーザーが同意すると、redirect_uricode=xxxxxx が付与されて返ります。

  2. トークン取得
    取得した認可コードとクライアントシークレットを用いて token エンドポイントへ POST。成功すれば以下が返却されます。

json
{
"access_token": "...",
"refresh_token": "...",
"expires_in": 3600,
"token_type": "Bearer"
}

  1. API 呼び出し
    Authorization: Bearer <access_token> を付与して API を利用。アクセストークンが期限切れになったら、refresh_token で再取得します。

注意点
スコープは最低でも read write が必要です。
リフレッシュトークンの保存場所は暗号化されたデータベースやキーバルトに限定してください。


3. レートリミットとベストプラクティス

3‑1. 公式レートリミット概要(2026 年)

項目 制限値
1 分間あたりのリクエスト数 60 回(トークンごと)
バースト上限 120 回(短時間に許容される最大回数)
HTTP 429 が返された場合の待機推奨時間 Retry-After ヘッダーで指定。未指定の場合は最低 1 秒から指数バックオフを適用
リセットタイミング 各分の開始時にカウントがリセットされます

実務上のリスク
レートリミット超過は 429 エラーで即座に失敗します。連続呼び出しが多いバッチ処理では必ずバックオフロジックを組み込みましょう。

3‑2. レートリミット回避策

  1. キャッシュ活用
  2. プロジェクト情報やページ一覧は 60 秒以内の再取得を抑制し、メモリまたは Redis に保存する。

  3. バッチ処理

  4. 複数行更新は PATCH の一括送信でまとめ、リクエスト回数自体を削減する。

  5. 指数バックオフ実装例(Node.js)

js
async function safeFetch(url, options, retries = 3) {
const resp = await fetch(url, options);
if (resp.ok) return resp.json();

}


4. 基本的なリクエスト実装例

この章では「プロジェクト情報取得」だけを行う最小構成を、Node.jsPython の二言語で示します。認証ヘッダーの設定は前節で説明した通り Authorization: Bearer <TOKEN> です。

4‑1. Node.js(JavaScript)サンプル

4‑2. Python(requests)サンプル

共通注意点
エラー時はステータスコードに応じた例外処理を行い、特に 429(レートリミット)ではバックオフロジックを必ず組み込みましょう。


5. 代表的ユースケースと実装サンプル

以下では業務で頻繁に利用されるパターンを取り上げ、Node.js と Python のコード例を示します。

5‑1. プロジェクト・ページの自動作成

手順概要

  1. プロジェクト作成POST /projects
  2. 作成したプロジェクト ID を取得し、デフォルトページ作成POST /pages/{projectId}

Node.js 実装

Python 実装

5‑2. ページへのテキスト追記とリンク一覧取得

手順概要

  1. 現行ページを GET で取得し、既存の lines 配列を取得
  2. 新しい行を結合した上で PATCH にて更新
  3. 同プロジェクトの全リンク一覧を GET /links/{projectId} で取得

Node.js 実装(冗長な認証ヘッダー記述は削除)

Python 実装


6. エラーハンドリングと実務での活用シナリオ

6‑1. エラー別対策表

HTTP ステータス 主な原因 推奨対策
400 パラメータ不正(例:ページタイトルに空白) 入力を事前バリデーション、encodeURIComponent 徹底
401 トークン欠如・期限切れ 再取得ロジック実装、Refresh Token の活用
403 スコープ不足 必要スコープ (read write) を付与した新トークンを発行
404 リソース未存在 ID / タイトルのエンコードミスや削除済みか確認
429 レートリミット超過 上記指数バックオフ+Retry-After ヘッダー尊守
5xx サーバ障害・メンテナンス 数秒待機後に再試行、ステータスページで障害情報確認

6‑2. 実務シナリオ例

シナリオ ビジネス目的 主な API 呼び出し
タスク自動登録 社内チケットと Scrapbox を同期させ、情報の一元管理を実現 POST /pages/{projectId}(新規ページ作成) → PATCH でステータス更新
定期レポート生成 毎週 KPI データを自動集計し、プロジェクト内に可視化 GET /projects/{id} → 集計ロジック → POST /pages/{projectId}
GitHub PR 連携 Pull Request 内容を Scrapbox に自動記録し、レビュー履歴を残す Webhook → PATCH(該当ページにリンク追加) → GET /links/{projectId} で参照関係確認

実装上のヒント
- バッチ処理は必ず 1 分間あたり 60 リクエスト以下 に抑えるようスロットリングを導入してください。
- 長時間走らせるジョブでは、途中でトークンが期限切れになるケースがあるため、失敗時に自動リフレッシュする仕組みを持たせましょう。


7. まとめ

  • エンドポイントhttps://scrapbox.io/api/v2/ プレフィックスで統一され、公式ドキュメントと一致しています。
  • 認証 は PAT または OAuth2 のどちらかを選択し、ヘッダーに Authorization: Bearer <TOKEN> を付与すれば完了です。重複記述は排除しました。
  • レートリミット は 1 分間 60 リクエスト(バースト上限 120)で、429 が返されたら指数バックオフを実装してください。
  • エラーハンドリングキャッシュ・バッチ処理 によって、実務レベルの安定運用が可能になります。

本稿を参考に、まずは「プロジェクト情報取得」から手を付けてみましょう。その後、ユースケース別にコードを拡張すれば、Scrapbox と外部システムとの連携がスムーズに実現できます。

スポンサードリンク

お得なお知らせ

スポンサードリンク
タイプ別にすぐ選べる

2026年、ビジネス競争力を上げる2ルート

"組織を動かす"立場と"個人スキルを伸ばす"立場では必要な打ち手が違います。自分の役割で選んでください。

▷ 部門・全社でAIリテラシー研修を入れたい管理職・人事・経営層

【Kindle本】イノベーションOps 組織を動かすDX&AI導入プロセスのすべて

▷ 個人のビジネススキル・思考法を"本から"底上げしたい実務担当者

Kindle Unlimited 30日無料|ビジネス書読み放題▶

※積極的な自己学習が成長への近道です

▶ 耳で学ぶビジネススキルなら オーディオブックAudible 。日経BP・東洋経済系の話題作も対象です。


-Scrapbox