tweetsmash-api について
tweetsmash-apiは、TweetSmash REST APIの利用を支援するスキルです。エンドポイントの確認からブックマーク取得やラベル管理、リクエストと応答の検証まで案内します。
主な機能
- 01最新エンドポイントの確認
- 02フィルターやカーソルによるブックマーク取得
- 03ラベルの一覧・追加・削除
- 04認証情報と応答の検証
- 05ページネーション情報の処理
活用シーン
- 01検索や条件指定でブックマークを取得
- 02保存したツイートをラベルで整理
- 03ページをまたいでブックマーク取得を継続
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ pedronauck/ skills --skill tweetsmash-apiインストール後、Claude Code で/tweetsmash-apiを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/add-labels-body.jsonremove-labels-body.jsonreferences/api-reference.mdbookmarks-filters.mdscripts/build-bookmarks-url.py詳細
TweetSmash API
現在のエンドポイント情報に基づいて、TweetSmash REST API を直接操作するには、このスキルを使用してください。このタスクで検証済みのドキュメントは再利用し、見当たらない場合、古くなっている場合、または API の情報と食い違う場合は更新してください。エンドポイントを選ぶ前に references/api-reference.md を読みます。ブックマークのフィルタリングが必要な場合に限り、references/bookmarks-filters.md を読みます。
手順
Step 1: 認証情報とスコープを確認する
- リクエストを送信する前に、TweetSmash API キーが利用可能であることを確認します。シェル環境の
TWEETSMASH_API_KEYを優先してください。 - 現在のエンドポイント、必須ヘッダー、レート制限、ステータスコードを確認するため、
references/api-reference.mdを読みます。 - タスクでブックマークのフィルタリングやページネーションが必要な場合は、
references/bookmarks-filters.mdを読みます。
Step 2: リクエストを作成する
- すべてのリクエストで
Authorization: Bearer $TWEETSMASH_API_KEYを使用します。 - このスキル内のすべての例で
Content-Type: application/jsonを使用します。ベース URL はhttps://api.tweetsmash.com/v1のままにします。 - タスクでフィルター付きのブックマークを取得する場合は、必要なフラグを指定して
python3 <tweetsmash-api-dir>/scripts/build-bookmarks-url.pyを実行し、適切にエンコードされた URL を生成します。 - ラベルを追加する場合は、
assets/add-labels-body.jsonを基にして、tweet_idsとlabel_idまたはlabel_nameのいずれかを入力します。 - ラベルを削除する場合は、
assets/remove-labels-body.jsonを基にして、tweet_idsとlabel_nameを入力します。
Step 3: 適切なエンドポイントを実行する
GET /bookmarksでブックマークを取得します。フィルター、検索、またはカーソルがある場合は、scripts/build-bookmarks-url.pyの URL を使用します。- 現在のラベル ID、ラベル名、または使用回数が必要な場合は、
GET /labelsでラベルを一覧表示します。 - ブックマークしたツイートを1件以上整理する必要がある場合は、
POST /labels/addでラベルを追加します。 - ブックマークしたツイートを整理または再分類する必要がある場合は、
POST /labels/removeでラベルを削除します。 - 手早く実行するには cURL を使用します。エンドポイントとペイロードを確認してから、必要に応じて同じリクエストを呼び出し元のランタイム向けに変換します。
Step 4: レスポンスを確認する
- 成功を報告する前に、レスポンス JSON に
"status": trueが含まれていることを確認します。 - ブックマークの読み取りでページネーションが重要な場合は、
meta.next_cursor、meta.limit、meta.total_countを確認します。 - ラベルの変更では、成功メッセージが意図した操作と一致することを確認します。
- ラベルの存在がタスクの前提となっており、変更のレスポンスだけでは確認できない場合は、
GET /labelsを呼び出して変更後の状態を確認します。
Step 5: 利用可能な結果を返す
- 使用したリクエストメソッド、エンドポイント、有効なフィルターまたはペイロードのフィールドを要約します。
- 呼び出し元が求める出力形式に応じて、レスポンス本文または構造化された要約を返します。
- 後続のページネーションが可能な場合は、次のリクエストで前のページから続けられるように
meta.next_cursorを提示します。
エラー処理
- 認証に
401で失敗した場合は、Bearer トークンが存在し、空ではなく、正しい TweetSmash アカウントのものであることを確認します。 - API が
402を返した場合は、リクエストされた API アクセスが現在のプランでは許可されていないことを報告し、処理を中止します。 - API が
429を返した場合は、リクエストの送信を中止し、Retry-Afterまたは現在のレート制限ヘッダーに従います。付属のリファレンスには過去の制限が記録されていますが、普遍的な制限として扱ったり、短い間隔で繰り返しリトライしたりしないでください。 - ブックマークのクエリを手作業で組み立てるのが難しい場合は、
python3 <tweetsmash-api-dir>/scripts/build-bookmarks-url.py --helpを再実行し、クエリ文字列を手動で連結せずに URL を組み立て直してください。 - ラベルの変更が不明瞭な場合は、まず
GET /labelsでラベルを一覧表示し、確認済みのラベル ID またはラベル名を使って変更を再実行します。
コメント
Markdown 対応