開発者向けライブラリ

カスタムトークンの発行

hisho-clientでユーザーごとに制限を加えたり高速化をするために必要なトークンを発行することができます。

前提条件

インストールのドキュメントの内容が完了しているものとします。

import { createHishoAdmin } from "hisho-admin";

const hisho = createHishoAdmin({
  apiKey: process.env.HISHO_ADMIN_API_KEY!,
});

この機能を利用するには、対象サービスの認証機能が実装済みである必要があります。

認証エンドポイントを作成

対象サービスに認証済みユーザー向けのエンドポイントを用意し、{ userToken: string } を返します。
例)/api/hisho/user-token

export const POST = async () => {
  // ログイン中のユーザー情報を取得
  const userToken = await hisho.project(projectId).createChatLinkUserToken({
    externalUserId: user.id,
    dailyQuestionLimit: 10,
  });

  return Response.json({ userToken });
};

externalUserId には、対象サービス側でログインユーザーを識別できるIDを指定します。(例:user.id)

Good to know

必要に応じて dailyQuestionLimit でユーザーごとの1日あたり質問上限を指定できます。(指定なしで無制限)

発行したカスタムトークンを利用してhisho-clientの質問回数を制限したり、高速化できたりします。

hisho-clientでの利用方法を見る→