Authenticated API
BIMI
selector._bimi.<host> の TXT レコードを確認し、BIMI ロゴ URL(l=) と VMC URL(a=) を抽出します。
Endpoint
GET /api/v1/bimi?host=example.com&selector=default
認証
ログイン済みブラウザセッション、または Authorization: Bearer <ioh_live_...> ヘッダの API キーが必要です。
パラメタ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
| host | string | 必須 | 対象ドメイン |
| selector | string | 任意 | BIMI selector。未指定時は default |
curl サンプル
curl "https://infra.yuzlrin.jp/api/v1/bimi?host=example.com&selector=default" -H "Authorization: Bearer ioh_live_xxxxxxxxxxxxxxxxxxxxxxxx"レスポンス例
{
"host": "example.com",
"selector": "default",
"record": "v=BIMI1; l=https://example.com/bimi.svg; a=https://example.com/vmc.pem",
"logoUrl": "https://example.com/bimi.svg",
"vmcUrl": "https://example.com/vmc.pem"
}共通エラー
| Status | code | 意味 |
|---|---|---|
| 400 | missing_parameter / invalid_host / invalid_url / invalid_parameter / ssrf_blocked | 入力不正または SSRF 保護による拒否。ssrf_blocked は reason を含む場合があります。 |
| 401 | auth_required / invalid_api_key / api_key_required | ログインまたは API キーが必要です。Site Health Check は API キー専用です。 |
| 413 / 415 | payload_too_large / unsupported_media_type | POST JSON のサイズ超過または Content-Type 不一致。 |
| 429 | rate_limited | レスポンス本文に resetInSec、ヘッダに Retry-After を含みます。 |
| 500 | internal_error | 内部エラー。エラー応答は Cache-Control: no-store です。 |
{
"error": "Invalid URL",
"code": "invalid_url"
}
{
"error": "Rate limited",
"code": "rate_limited",
"resetInSec": 3600
}制限事項
- ログインセッション 300 回 / 日。API キー Free プラン 1000 回 / 日 + 30000 回 / 月。
- SSRF 保護 — private IP / metadata ホストへのリクエストは拒否。
- 通信量・対象負荷を配慮した利用をお願いします。