SNS抽選ツール

名簿貼り付け、YouTube・Facebook Page・Instagram・Threads の認可済み反応を取り込み、再現可能な seed で抽選します。

手入力リスト、生の OAuth code/token、取込名簿スナップショットはブラウザの一時状態だけに置きます。provider 呼出時は下記項目を GoGo バックエンドへ送りますが、生の code、token、取込スナップショットは永続保存せず、別途下記の仮名識別 OAuth metadata だけを保存します。

すべての request に locale を含めます。YouTube:videoUrlOrId、maxComments、任意の keyword、locale。Facebook:auth URL の locale、Pages の authCode・locale、投稿の pageId・postUrlOrId・accessToken・includeReactions・locale。Instagram:auth URL の locale、認可情報の authCode または accessToken・locale、コメントの mediaId・accessToken・maxComments・locale。Threads:auth URL の locale、profile の authCode または accessToken・locale、返信の mediaId・accessToken・maxReplies・locale。生の code/token と取込スナップショットはブラウザの一時状態で、バックエンドは永続保存しません。下記 OAuth metadata は別途保存します。

OAuth 開始時、バックエンドは仮名識別の HMAC nonce digest 文書キー、provider、createdAt、expiresAt を別途保存し、生の code、token、state、nonce は保存しません。記録は 10 分後に利用できなくなり Firestore TTL の非同期削除対象になりますが、第 10 分での物理削除は保証しません。

  • 1回の取込は1~500件です。
  • 各賞の当選・補欠はそれぞれ0~100人で、合計は有効参加者数以下です。
  • Seed は1~128文字です。
  • 賞名は100文字以内です。
メイン賞
有効参加者 3重複 0除外 0

使い方

手入力リストはブラウザー内で扱い、取得可能な YouTube コメント、または認可済み Facebook Page、Instagram、Threads アカウントがアクセスできる反応を取り込めます。

SNSキャンペーンやプレゼント企画の当選者を完全に公平に抽選できるルーレットツールです。暗号学的乱数を用いて作為のない均等な確率を保証し、重複応募の排除も簡単に行えます。

💡 かんたん3ステップ利用ガイド

① 参加者リストを貼り付け

応募者のアカウント名や番号を1行に1人ずつ入力します。

② 当選人数と条件を設定

当選人数を指定し、重複投稿を1票にまとめるかを選びます。

③ 抽選を実行

抽選ボタンを押すと、偏りのない真のランダム性で当選者が決定されます。

利用場面

手入力とプラットフォームごとの取込結果を分け、重複・除外処理、シード値、当選・補欠、CSV 出力に対応します。

計算・処理方法

手入力は1行1名です。YouTube コメントはバックエンドが設定済みの YouTube API キーで取得し、Facebook Page、Instagram、Threads は認可アカウントがアクセスできる内容を使います。現在のタブで最後に成功したスナップショットだけをシード値順で抽選します。

具体例

例:YouTube コメントを最大500件取り込み、当選1名・補欠1名・128文字以内のシード値を設定して CSV を保存します。

制限とデータ処理

YouTube コメントはバックエンドが設定済みの YouTube API キーで取得します。Facebook Page、Instagram、Threads は認可アカウントがアクセスできる内容だけに対応します。未設定、未認可、タイムアウト、不正な応答は安全な翻訳済みエラーとなり、提供元の生メッセージは表示せず、任意の公開投稿取込も保証しません。 プラットフォーム取込のブラウザー要求は最大 20 秒待機します。バックエンドは同一送信元からの SNS 取込・認可要求を 60 秒間に最大 12 回受け付けます。成功した取込名簿はバックエンドでキャッシュしません。現在のブラウザーに最新の成功スナップショットだけを一時保持し、失敗時は新しいスナップショットを作りません。

すべての request に locale を含めます。YouTube コメント取込は videoUrlOrId、maxComments、任意の keyword、locale。Facebook の auth URL は locale、Page 取得は authCode と locale、投稿取込は pageId、postUrlOrId、accessToken、includeReactions、locale。Instagram の auth URL は locale、認可情報取得は authCode または accessToken と locale、コメント取込は mediaId、accessToken、maxComments、locale。Threads の auth URL は locale、profile 取得は authCode または accessToken と locale、返信取込は mediaId、accessToken、maxReplies、locale。手入力名簿は送信しません。 バックエンドは仮名識別の HMAC nonce digest 文書キー、provider、createdAt、expiresAt を別途保存し、生の code、token、state、nonce は保存しません。記録は 10 分後に利用できなくなり Firestore TTL の非同期削除対象になりますが、第 10 分での物理削除は保証しません。

暗号学的乱数生成・抽選アルゴリズムの公平性検証と不正防止ガイド

1. 暗号学的擬似乱数(CSPRNG)による完全な公平性の担保

偏りのない真のランダム性を保証するWeb Cryptography APIとFisher-Yatesシャッフルアルゴリズムを採用し、全参加者に均等な当選確率(1/N)を提供します。

2. 重複応募の排除とボット・スパム対策

同一アカウントによる連続投稿の自動重複排除や、指定キーワードを含むコメントのみを対象とする抽出条件設定が可能です。

3. 抽選プロセスの透明性と信頼性向上

抽選の全画面録画や当選ログの公開により、キャンペーンの不正疑惑を完全に排除したクリーンな運営を支援します。

信頼できる情報源と参考基準

  • W3C Web Cryptography API 暗号乱数規格
  • 消費者庁:懸賞・プレゼントキャンペーンにおける景品表示法上の指針
  • 情報処理学会:乱数生成とアルゴリズム評価

よくある質問

SNS抽選ツール:参加者数と賞の入力範囲は?

プラットフォームからの取込は1~500件です。各賞の当選・補欠はそれぞれ0~100人で、合計は有効参加者数以下にします。シード値は1~128文字、賞名は100文字以内です。

SNS抽選ツール:手入力と API の名簿はどう抽選しますか?

手入力は1行1名でブラウザ内に残ります。API は現在のプラットフォームタブで最後に成功したスナップショットだけを使い、切替・再取込・失敗後に別のプラットフォームの名簿を流用しません。 生の OAuth code/token と取込名簿スナップショットはブラウザの一時状態だけに置き、バックエンドは永続保存しません。

SNS抽選ツール:どのプラットフォームのコンテンツを取り込めますか?

YouTube コメントはバックエンドが設定済みの YouTube API キーで取得します。Facebook Page、Instagram、Threads は認可アカウントがアクセスできる内容だけに対応します。未設定、未認可、タイムアウト、不正な応答は安全な翻訳済みエラーとなり、提供元の生メッセージは表示せず、任意の公開投稿取込も保証しません。 プラットフォーム取込のブラウザー要求は最大 20 秒待機します。バックエンドは同一送信元からの SNS 取込・認可要求を 60 秒間に最大 12 回受け付けます。成功した取込名簿はバックエンドでキャッシュしません。現在のブラウザーに最新の成功スナップショットだけを一時保持し、失敗時は新しいスナップショットを作りません。

SNS抽選ツール:各 API request で何を送信しますか?

すべての request に locale を含めます。YouTube コメント取込は videoUrlOrId、maxComments、任意の keyword、locale。Facebook の auth URL は locale、Page 取得は authCode と locale、投稿取込は pageId、postUrlOrId、accessToken、includeReactions、locale。Instagram の auth URL は locale、認可情報取得は authCode または accessToken と locale、コメント取込は mediaId、accessToken、maxComments、locale。Threads の auth URL は locale、profile 取得は authCode または accessToken と locale、返信取込は mediaId、accessToken、maxReplies、locale。手入力名簿は送信しません。 バックエンドは仮名識別の HMAC nonce digest 文書キー、provider、createdAt、expiresAt を別途保存し、生の code、token、state、nonce は保存しません。記録は 10 分後に利用できなくなり Firestore TTL の非同期削除対象になりますが、第 10 分での物理削除は保証しません。