AIイノベーションズ ブログ

IndexNowを使ってBingなどにインデックスさせる手順

最終更新日:
阿部隼也
阿部 隼也
AIイノベーションズ 代表取締役社長 | x.com/ai_abe_shunya
リアルタイムアンケートツール: LiveQ

お悩み相談AIチャット: AI相談.com

IndexNowは、Bingなどの検索エンジンにサイトをインデックスさせるためのサービスで、BingだけでなくBrave, Yandex, DuckDuckGoのような検索エンジンにも対応しています。 (Googleは非対応)

一括で1万件のURLを申請できて、コンテンツ更新時にそのリクエストを送信すれば良いだけなので非常に便利です。

この記事ではIndexNowを使ってBingなどにインデックスさせる手順を解説します。

なお、IndexNowはHTTPリクエストの送信が必須なので、比較的PCやITに慣れている人でないと難しいかもしれません。ただしプログラミング技術があるかどうかはそこまで問われないため、非技術者でも試してみると良いかと思います。

IndexNowを使ってインデックスさせる手順

以下の手順でインデックス申請ができます。

  1. IndexNowのAPIキーを取得する
  2. APIキーを含んだtxtファイルをサイトにアップロードする
  3. HTTPリクエストを送信する(インデックス申請をおこなう)

それでは順番に見ていきましょう!

1. IndexNowのAPIキーを取得する

IndexNowのAPIキーは、Bingが用意している下記ページから簡単に取得できます。

IndexNowのAPIキー取得ページ

このページにアクセスすると、すでに自動でAPIキーが生成されていますので、これをコピーしてください。

たとえば、bb6bfd56117d46d1bd7093fd89a0240bのようなAPIキーのはずです。

2. APIキーを含んだtxtファイルをサイトにアップロードする

APIキーをファイル名にして .txt の拡張子をつけてサイトにアップロードする必要があります。

たとえば、bb6bfd56117d46d1bd7093fd89a0240b.txtのようなファイル名にしてください。

その際、ファイルの中身はbb6bfd56117d46d2bd7073fd89a0240bのようにキーだけを記述してください。

次に、そのファイルをルートディレクトリにアップロードしてください。

あなたのウェブサイトが example.com であれば、example.com/bb6bfd56117d46d1bd7093fd89a0240b.txt でアクセスできるようにしてください。

これにより、IndexNowがあなたのウェブサイトのコンテンツをインデックスすることができるようになります。

3. HTTPリクエストを送信する(インデックス申請をおこなう)

あとは、リクエストを送信することでインデックス申請をおこなえるようになります。

なお、リクエストの送信元はどこでも良いので、PowerShellやMacのTerminalなどでおこなえます。

ただ、非技術者の方や私のようにGUIが好きな方は Yaak のようなGUIツールを使うと便利です。

リクエスト内容の例(curlで送信する場合)

インデックス申請は https://api.indexnow.org/IndexNow に対して JSON を POST します。hosturlList の整合、keykeyLocation が正しいものか必ず確認してください。

curl -sS -X POST 'https://api.indexnow.org/IndexNow' \
  -H 'Content-Type: application/json; charset=utf-8' \
  -d '{
    "host": "www.example.org",
    "key": "bb6bfd56117d46d2bd7073fd89a0240b",
    "keyLocation": "https://www.example.org/bb6bfd56117d46d2bd7073fd89a0240b.txt",
    "urlList": [
      "https://www.example.org/url1",
      "https://www.example.org/folder/url2",
      "https://www.example.org/url3"
    ]
  }'

リクエスト内容の例(Yaakで送信する場合)

私は下記画像のように設定をして送信に成功しました。

(弊社の aisodan.com の一部URLをインデックスさせる例)

  • 新規リクエストを作成
    • Method: POST
    • URL: https://api.indexnow.org/IndexNow
  • Headers
    • Content-Type: application/json; charset=utf-8
  • Body(JSON)
{
  "host": "aisodan.com",
  "key": "bb6bfd56117d46d2bd7073fd89a0240b",
  "keyLocation": "https://aisodan.com/bb6bfd56117d46d2bd7073fd89a0240b.txt",
  "urlList": [
    "https://aisodan.com/categories/love",
  ]
}

レスポンスコードの見方

  • 200 Ok: 成功(URLが正常に送信されました)
  • 202 Accepted: キー検証中(もう少し待ってから再度送信してください)
  • 400 Bad Request: フォーマット不正(JSONの形式など)
  • 403 Forbidden: キーが正しくない(ファイル未設置、キー未記載、値不一致など)
  • 422 Unprocessable Entity: host とURLの不一致、キーのスキーマ不一致
  • 429 Too Many Requests: 送信過多(スパムと見なされた可能性)

つまずきやすいポイント

  • hosturlList のドメインが一致していない
  • keyLocation のURLが誤っている、またはHTTPSではない
  • キーファイルの中身が空、もしくはキー値が一致していない
  • JSONの末尾カンマや引用符不足などのフォーマットミス

以上の方法で、200 OK が返ってくればインデックス申請が成功したことになります。

なお、あくまで申請が完了しただけで、そこから検索エンジン(Bingなど)がコンテンツを見るなどして評価してからインデックスの可否が決定されることに注意してください。そこからは各社の判断なので。

リアルタイムアンケートツール: LiveQ

お悩み相談AIチャット: AI相談.com