はじめに
「Qiitaにたくさん記事を書いたけど、投稿が増えると管理が大変…」
そんなあなたにおすすめなのが、Google Apps Script(GAS)× Qiita APIで作る
「投稿記事一覧の自動取得ツール」!
この記事では、自分のQiita記事をスプレッドシートに自動で一覧化する方法を、
初心者にもわかるように解説します。
この記事でできること
- 自分のQiitaユーザーIDを元に、投稿済み記事の一覧を取得
- タイトル、URL、投稿日、いいね数などをスプレッドシートに自動入力
- GASスクリプトはコピペでOK!
1. 事前準備
✅ 使用するもの
- Googleスプレッドシート(空のものでOK)
- Google Apps Script(スプレッドシートから簡単に開ける)
- Qiita API トークン(後述)
2. Qiita APIトークンを取得しよう
Qiita APIを使うためには「アクセストークン」が必要です。
-
Qiitaにログイン
-
アクセストークンの発行ページへアクセス
-
「新しくトークンを発行」
- 説明:任意(例:スプレッドシート連携)
- 権限:
read_qiitaのみにチェック
-
トークンが表示されるので、コピペして保存
トークンは再表示できないので、メモ必須!
2: 設定 > アプリケーション > 個人用アクセストークン

3: 「 アクセストークンの説明 」記載 > スコープ「read_qiita」選択 > 「発行する」押下

4: 「 アクセストークンをコピー」を押下 ※ 忘れないようにコピーすること!

3. スプレッドシートにスクリプトを設定
📘 手順
- スプレッドシートを開く
- メニュー「拡張機能」→「Apps Script」を選択
- 以下のコードを貼り付け、保存
1: スプレットシートを開く

2: メニュー > 拡張機能 > Apps Script 選択

3: コード貼り付け

4: アクセストークンとユーザIDを記載 ※ IDの最初の「 @ 」は不要

【 コード 】
const qiitaUserId = "YOUR_ID"; // あなたのユーザーIDに書き換えてね
const accessToken = "YOUR_ACCESS_TOKEN_HERE"; // 発行したトークン
function fetchQiitaArticles() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
sheet.clearContents();
sheet.appendRow(["タイトル", "投稿日", "URL", "いいね数"]);
let page = 1;
let articles = [];
while (true) {
const url = `https://qiita.com/api/v2/users/${qiitaUserId}/items?page=${page}&per_page=100`;
const options = {
method: 'get',
headers: { Authorization: `Bearer ${accessToken}` },
};
const res = UrlFetchApp.fetch(url, options);
const json = JSON.parse(res.getContentText());
if (json.length === 0) break;
articles = articles.concat(json);
page++;
}
for (const item of articles) {
sheet.appendRow([
item.title,
item.created_at.substring(0, 10),
item.url,
item.likes_count,
]);
}
}
4. 実行してみよう!
- Apps Script の画面から「関数選択」を
fetchQiitaArticlesにして「▶︎実行」
※ 初回は認証が必要です。許可してください。 - スプレッドシートに記事一覧が表示されれば成功!
5. 応用&便利な使い方
- タイトルに Markdownリンクを自動生成したい
- 記事にタグやストック数も表示したい
- 投稿日順に自動でソートしたい
など、カスタマイズも自由自在!
6. ハマりがちなポイント
| 症状 | 原因・対処 |
|---|---|
| エラーが出て動かない | トークンやユーザーIDにミスがあるかも?特に@は不要! |
| 何も表示されない | ユーザーIDが正しいか、記事が非公開でないか確認 |
まとめ
Qiita × GASで、記事一覧を自動化できると、投稿管理がぐっとラクに!
Markdownやナビページとの連携もできて、「見せる・伝える・まとめる」が
スムーズになるよ。