BoothMate API Documentation - v0.4.0
    Preparing search index...
    Index

    Constructors

    Methods

    • Webアプリマニフェストを取得します。

      BoothのWebアプリマニフェスト(manifest.json) の内容を取得します。

      Returns Promise<WebAppManifest>

      Webアプリマニフェストの内容

      // アプリの名前を出力
      const manifest = await client.utils.getManifest();
      console.log(manifest.name);
    • セッショントークンの有効性を検証します。

      現在設定されているセッショントークンが有効かどうかを確認します。 ログイン状態の確認に使用できます。

      注意: CSRFトークンは検証しません。CSRFトークンが必要なリクエストは 副作用(追加/変更/削除) を伴う可能性があるためです。

      Returns Promise<boolean>

      ログイン済みの場合true、未ログインの場合false

      // ログイン状態を確認
      const isLoggedIn = await client.utils.validateToken();
      if (isLoggedIn) {
      console.log('ログイン済みです');
      }
    • 検索クエリの候補を取得します。

      入力された検索クエリに基づいて、Boothが提案する検索候補を取得します。 オートコンプリート機能の実装に使用できます。

      Parameters

      • query: string

        検索クエリ(部分的な文字列でも可)

      Returns Promise<string[]>

      検索候補の文字列配列

      // "art" に対する検索候補を取得
      const suggestions = await client.utils.autocomplete('art');
      for (const suggestion of suggestions) {
      console.log(suggestion);
      }
    • URLから商品IDを抽出します。

      Boothの商品URLから商品IDを抽出します。

      対応するURL形式:

      • https://booth.pm/{言語ID}/items/{ID}
      • https://{サブドメイン}.booth.pm/items/{ID}

      Parameters

      • url: string

        商品のURL

      Returns undefined | number

      商品ID(URLが無効な場合はundefined)

      // 商品URLから商品IDを抽出
      const itemId = client.utils.extractItemId('https://example.booth.pm/items/12345');
      if (itemId) {
      console.log(`商品ID: ${itemId}`); // 商品ID: 12345
      }
    • URLからサブドメインを抽出します。

      BoothのショップURLからショップのサブドメインを抽出します。

      対応するURL形式:

      • https://{サブドメイン}.booth.pm/

      Parameters

      • url: string

        ショップのURL

      Returns undefined | string

      ショップID(URLが無効な場合はundefined)

      // ショップURLからサブドメインを抽出
      const subdomain = client.utils.extractSubdomain('https://example.booth.pm/');
      if (subdomain) {
      console.log(`サブドメイン: ${subdomain}`); // サブドメイン: example
      }
    • URLからウィッシュリストIDを抽出します。

      BoothのウィッシュリストURLからウィッシュリストIDを抽出します。

      対応するURL形式:

      • https://accounts.booth.pm/wish_lists/{ID}
      • https://booth.pm/wish_list_names/{ID}

      Parameters

      • url: string

        ウィッシュリストのURL

      Returns undefined | string

      ウィッシュリストID(URLが無効な場合はundefined)

      // ウィッシュリストURLからウィッシュリストIDを抽出
      const wishlistId = client.utils.extractWishlistId('https://accounts.booth.pm/wish_lists/pQ9TlbPV');
      if (wishlistId) {
      console.log(`ウィッシュリストID: ${wishlistId}`); // ウィッシュリストID: pQ9TlbPV
      }
    • URLからサブドメインと商品リストIDを抽出します。

      Boothの商品リストURLからサブドメインと商品リストIDを抽出します。

      対応するURL形式:

      • https://{サブドメイン}.booth.pm/item_lists/{ID}

      Parameters

      • url: string

        商品リストのURL

      Returns undefined | [subdomain: string, itemListId: string]

      [サブドメイン, 商品リストID] (URLが無効な場合はundefined)

      // 商品リストURLからサブドメインと商品リストIDを抽出
      const result = client.utils.extractItemListId('https://example.booth.pm/item_lists/8OVTLANn');
      if (result) {
      const [subdomain, itemListId] = result;
      console.log(`サブドメイン: ${subdomain}`); // サブドメイン: example
      console.log(`商品リストID: ${itemListId}`); // 商品リストID: 8OVTLANn
      }
    • ファイルサイズを人間に読みやすい形式に変換します(例: 1500 -> "1.47 KB")。

      Parameters

      • fileBytes: number

        ファイルサイズ(バイト単位)

      • decimalPlaces: number = 2

        小数点以下の桁数 (デフォルトは2)

      Returns string

      変換されたファイルサイズの文字列

      // 1500バイトを人間に読みやすい形式に変換
      const readableSize = client.utils.formatFileSize(1500);
      console.log(readableSize); // "1.47 KB"