ドキュメント/認証

認証

KoeIQ APIは2種類の認証方式をサポートしています。ブラウザ/ユーザーセッション用のJWTベアラートークンと、サーバー間連携用のX-API-Keyヘッダーです。

1. JWTベアラートークン(ブラウザ・ユーザー用)

ダッシュボードへのログインおよびブラウザからのAPIアクセスはJWT(JSON Web Token)で認証します。

ログイン

POST /api/auth/login
Content-Type: application/json

{
  "email": "admin@example.com",
  "password": "your_password"
}

// レスポンス
{
  "access_token": "eyJ...",
  "refresh_token": "eyJ...",
  "token_type": "bearer"
}
注意 MFAが有効な場合、ログインは2段階になります。最初のレスポンスにmfa_required: trueが含まれ、TOTPコードをPOST /api/auth/mfa/verifyに送信する必要があります。

トークンの使用

GET /api/voicelogs
Authorization: Bearer eyJ...

トークンのリフレッシュ

アクセストークンは短期間で失効します。リフレッシュトークンで新しいアクセストークンを取得してください。

POST /api/auth/refresh
Content-Type: application/json

{
  "refresh_token": "eyJ..."
}

// レスポンス
{
  "access_token": "eyJ...",
  "token_type": "bearer"
}

2. X-API-Key(サーバー間連携用)

外部システムからの音声ファイルアップロード(Ingest API)にはAPIキー認証を使用します。JWTは不要です。

APIキーの生成

  1. 設定 → APIキー に移動
  2. 「APIキーを生成」をクリック
  3. キーをコピーして安全な場所に保存(再表示できません)

APIキーの使用

POST /api/ingest/upload
X-API-Key: koeiq_live_xxxxxxxxxxxx
Content-Type: multipart/form-data
警告 APIキーはIngest APIエンドポイント(/api/ingest/*)専用です。ダッシュボードのAPIエンドポイントにはJWTを使用してください。

3. MFA(多要素認証)

TOTP(Time-based One-Time Password)による2段階認証を設定できます。Google Authenticator、Authyなどに対応しています。

エンドポイント説明
POST /api/auth/mfa/setupTOTPセットアップ開始(QRコード返却)
POST /api/auth/mfa/verify-setup登録確認(初回コード入力)
POST /api/auth/mfa/verifyログインフロー中のコード検証
POST /api/auth/mfa/disableMFA無効化

次のステップ

ドキュメントトップサポートに問い合わせる →