API Keys
Tiro APIは認証にAPI keyを使用します。すべてのAPIリクエストには、Bearer token形式を用いて、Authorizationヘッダーに有効なAPI keyを含める必要があります。
API keyを取得する
API keyはTiro Platformダッシュボードから取得できます。
- platform.tiro.ooo/dashboard/api-keysにアクセスしてサインインします
- Create New API Keyをクリックします
- API keyをコピーして、安全に保管します
API keyは安全に保管し、クライアントサイドのコードに公開しないでください。API keyは
サーバーサイドのアプリケーションでのみ使用してください。
API key形式
Tiro APIのkeyは次の形式に従います。
例: abc123.xR7mK9pL2qW4...
| Part | Example | Description |
|---|
Key ID ({id}) | abc123 | Platformダッシュボードに表示されます。どのkeyがリクエストを行っているかを識別するために使用します。 |
Secret ({secret}) | xR7mK9pL2qW4... | 作成時に一度だけ表示されます。サーバーはhashのみを保存するため、復元できません。 |
| Full API Key | abc123.xR7mK9pL2qW4... | ドットを含む文字列全体です。これをBearer tokenとして使用します。 |
よくある間違い: Key ID(abc123)だけをBearer tokenとして使用しないでください。full key(abc123.xR7mK9pL2qW4...)、つまりkey作成時に表示された完全な文字列を使用する必要があります。
認証付きリクエストを行う
すべてのリクエストのAuthorizationヘッダーにAPI keyを含めます。
curl -H "Authorization: Bearer $TIRO_API_KEY" \
-H "Content-Type: application/json" \
https://api.tiro.ooo/v1/external/notes
認証エラー
認証に失敗すると、401 Unauthorizedレスポンスが返されます。主な原因は次のとおりです。
- Authorizationヘッダーがない
- keyの形式が不正(
{id}.{secret}である必要があります)
- 不明なkey id
- 無効、期限切れ、または削除されたkey
{
"error": {
"code": "invalid_api_key",
"message": "The API key provided is invalid",
"type": "authentication_error"
}
}
セキュリティのベストプラクティス
環境変数
環境変数を使用して、API keyを安全に保管します。
# .env file (never commit this!)
TIRO_API_KEY=abc123.XYZ...
その他のセキュリティガイドライン
- keyを定期的にローテーションする: 使用していないkeyを削除し、新しいkeyを生成します
- 環境ごとにkeyを分ける: 開発環境と本番環境で異なるkeyを使用します
- 利用状況を監視する: API keyの利用状況を追跡し、異常があればローテーションします
- API keyを絶対にログに記録しない: keyがアプリケーションのログに表示されないようにします
- HTTPSのみを使用する: 常に安全な接続でリクエストを行います