メインコンテンツまでスキップ

認証

すべての​ Shisa サービスは、​共通ホスト https://api.shisa.ai 上で​ HTTPS 経由で​アクセスし、​API キーで​認証します。​本ガイドでは、​キーの​取得方​法、​安全な​管理方​法、​そして​各サービスが​要求する​正確な​ Authorization ヘッダーに​ついて​説明します。

API キーを​取得する

キーの​作成と​管理は​ Shisa プラットフォーム で​行います。​新規アカウントには​ $10 分の​無料 API クレジットが​付属しており、​これは​ LLM、​ASR、​TTS、​翻訳の​すべての​サービスで​利用できます。​その​ため、​支払い方​法を​追加する​前に​すべてを​試すことができます。

キーを​秘密に​保つ

API キーは、​アカウントの​クレジットと​クォータへの​アクセスを​許可します。​パスワードと​同じように​扱ってください。

  • キーを​ソース管理に​コミットしないでください。 代わりに、​たとえば​ SHISA_API_KEY のような​環境変数から​読み込みます。
  • キーを​クライアントサイドの​コードに​埋め込まないでください — ブラウザの​ JavaScript、​モバイルアプリ、​ユーザーが​調べられる​もの​すべてが​対象です。​自分の​バックエンドから​ Shisa を​呼び出し、​リクエストを​プロキシしてください。
  • 漏洩した​疑いが​ある​場合はすぐに​キーを​ローテーションし、​使用していない​キーは​削除してください。
# Set the key once in your shell or deployment environment
export SHISA_API_KEY="YOUR_API_KEY"
警告

フロントエンドの​コードや​公開リポジトリに​ API キーを​露出させないでください。​漏洩した​キーは、​取り消すまで​クレジットを​消費する​ために​使われる​可能性が​あります。​キーは​サーバーサイドに​保持し、​環境から​読み込んでください。

サービスごとの​ヘッダー規約

Authorization ヘッダーは意図的に​サービスごとに​異なります — 各呼び出しで​正確に​一致させてください。​ASR と​翻訳で​使われる​ shsk: プレフィックスに​注意してください。​また、​翻訳では​ Bearer キーワードを使用しない点にも​注意してください。

ServiceEndpointAuthorization header
LLMPOST /openai/v1/chat/completionsAuthorization: Bearer YOUR_API_KEY
TTSPOST /tts, GET /tts/voicesAuthorization: Bearer YOUR_API_KEY
ASRPOST /asr/srt/audio_llmAuthorization: Bearer shsk:YOUR_API_KEY
TranslationPOST /translate/Authorization: shsk:YOUR_API_KEY

LLM — Bearer YOUR_API_KEY

Shisa LLM は​ OpenAI 互換で、​標準的な​ベアラートークンを​使用します。​完全な​例に​ついては​ LLM クイックスタートを​参照してください。

curl -XPOST https://api.shisa.ai/openai/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $SHISA_API_KEY" \
-d '{"model": "shisa-ai/shisa-v2.1-llama3.3-70b", "messages": [{"role": "user", "content": "こんにちは"}]}'

TTS — Bearer YOUR_API_KEY

Text-to-Speech も​標準的な​ベアラートークンを​使用します。

curl -XGET https://api.shisa.ai/tts/voices \
-H "Authorization: Bearer $SHISA_API_KEY"

ASR — Bearer shsk:YOUR_API_KEY

音声認識は​ベアラートークンを​使用しますが、​ヘッダー内では​キーに​ shsk: プレフィックスが​付きます

curl -XPOST https://api.shisa.ai/asr/srt/audio_llm \
-H "Authorization: Bearer shsk:$SHISA_API_KEY" \
-F "audio=@sample.wav"

Translation — shsk:YOUR_API_KEYBearer なし)

翻訳も​ shsk: プレフィックスを​使用しますが、Bearer キーワードは完全に​省略します — ヘッダーの​値は​ shsk: の​後に​キーを​続けるだけです。

curl -XPOST https://api.shisa.ai/translate/ \
-H "Content-Type: application/json" \
-H "Authorization: shsk:$SHISA_API_KEY" \
-d '{"text": "Hello", "target": "ja"}'
注記

リクエストが​ HTTP 401 と​ Authentication error: Invalid token のような​エラーで​失敗した​場合、​最も​一般的な​原因は​ヘッダーの​形式が​間違っている​ことです — た​とえば、shsk: プレフィックスなしで​素の​ベアラートークンを​ ASR や​翻訳に​送信した​場合などです。​エラーの​完全な​形に​ついては​ エラーを​参照してください。

次の​ステップ

  • レート制限 — クォータ、429 レスポンス、​バックオフ。
  • エラー — ステータスコードと​ JSON エラーの​形。
  • SDK — LLM 向けの​ OpenAI SDK と​その​他の​サービス向けの​ HTTP クライアント。