bruno-endpoint-creation について
REST コレクションを扱う開発者向けに、Bruno の `.bru` エンドポイントファイル作成パターンを解説するスキルです。環境変数、認証の継承、リクエストスクリプト、エンドポイント文書を扱います。
主な機能
- 01HTTP エンドポイントファイルの構成
- 02コレクション変数とシークレット変数の設定
- 03認証の継承または上書き
- 04リクエスト前後のスクリプト
- 05エンドポイント文書の追加
活用シーン
- 01ローカルやステージング API 用エンドポイントの作成
- 02コレクション単位の Bearer 認証の再利用
- 03レスポンスから取得した ID の後続リクエストへの受け渡し
- 04動的なリクエストデータの生成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ steveclarke/ dotfiles --skill bruno-endpoint-creationインストール後、Claude Code で/bruno-endpoint-creationを入力して読み込まれたか確認します。
詳細
Bruno エンドポイントの作成
.bru エンドポイントファイルを作成するための、Bruno 固有のパターンです。REST の規約に精通していることを前提としています。
環境設定
開発(Local.bru):
vars {
baseUrl: http://localhost:3001
linkId:
apiKey: dev_api_key_change_in_production
}
本番/ステージング — 機密データには vars:secret を使用します:
vars {
baseUrl: https://api.yourdomain.com
linkId:
}
vars:secret [
apiKey
]
コレクションレベルの認証
collection.bru で一度認証を設定すると、すべてのエンドポイントに継承されます:
auth {
mode: bearer
}
auth:bearer {
token: {{apiKey}}
}
個々のエンドポイントでは、auth: inherit を指定して継承します:
post {
url: {{baseUrl}}/api/v1/resources
body: json
auth: inherit
}
認証がコレクションと異なる場合に限り、エンドポイントごとに上書きしてください。
リクエスト構造
meta {
name: "Create Resource"
type: http
seq: 1
}
post {
url: {{baseUrl}}/api/v1/resources
body: json
auth: inherit
}
body:json {
{
"resource": {
"field1": "value1",
"field2": "value2"
}
}
}
params:path {
id: {{resourceId}}
}
params:query {
page: 1
limit: 20
sort: created_at
order: desc
}
スクリプト API
レスポンス後 — 後続のリクエストで使用するデータを抽出します:
script:post-response {
if (res.status === 201 && res.body && res.body.id) {
bru.setVar("resourceId", res.body.id);
}
}
リクエスト前 — 動的なデータを生成します:
script:pre-request {
const timestamp = Date.now();
bru.setVar("uniqueEmail", `test-${timestamp}@example.com`);
}
主な違い:
bru.setVar()— ランタイム変数(一時的で、現在のコレクションの実行中のみ有効)bru.setEnvVar()— 環境変数(保持され、「Environment」タブに表示されます)
テスト実行で抽出した ID などの一時的な値には、bru.setVar() を使用してください。
ドキュメントブロック
docs {
Create a new resource in the system.
**Required Fields:**
- field1: Description
- field2: Description
**Optional Fields:**
- optional_field: Description
}
コレクションのフォルダー構造
Bruno Collection/
├── Environments/
│ ├── Local.bru
│ ├── Staging.bru
│ └── Production.bru
├── Authentication/
│ ├── Login.bru
│ └── Refresh Token.bru
├── Resources/
│ ├── List Resources.bru
│ ├── Get Resource.bru
│ ├── Create Resource.bru
│ ├── Update Resource.bru
│ └── Delete Resource.bru
└── Health/
└── Health Check.bru
コメント
Markdown 対応