VRChat データ API

コマンドリファレンス

よく使う呼び出しを、curl・PowerShell・Python・JavaScriptのコマンド例にまとめました。タブで切り替え、「コピー」で貼り付けられます。ベースURLは https://vrc.hachune.space/api/v1 です。

はじめに User-Agent は必ず指定してください(例では my-app/1.0。ご自身のアプリ名に置き換えてください)。連続して呼ぶときは間隔を空けてください(利用ガイド)。
目次公開1週間以内のワールド季節・ジャンルで絞り込む名前・作者名で検索する(日本語)アバターの人気ランキング(1ページ目)アバター1件の詳細(価格推移・対応アイテム)IDを指定してまとめて取得する(ブックマーク)結果を絞り込む・保存する全ページを順に取得する(間隔を空ける)

パラメータ早見表

エンドポイントパラメータ値・意味
/avatarsmodepopular=人気 / rising=急上昇 / new=新着 / bookmark=ID指定
sortrank / sale / price / price_desc / name / shop
qアバター名・作者名の部分一致
pageページ番号(1ページ100件)
idsmode=bookmark のときの商品ID(カンマ区切り・最大300件)
/avatar-detailitem_idBOOTHの商品ID(必須)
/worldsseasonall / beginner / spring / summer / autumn / winter / chill / vsleep / jp_community / popular
moderising=お気に入りの伸び / new=公開1週間以内 / bookmark=ID指定
sortfavorites / name / author / newest / curator
qワールド名・作者名の部分一致
idsmode=bookmark のときのワールドID(最大300件)

公開1週間以内のワールド

GET GET /worlds mode=new。配列が返ります。

curl -s -A "my-app/1.0" "https://vrc.hachune.space/api/v1/worlds?mode=new"

季節・ジャンルで絞り込む

GET GET /worlds season は all / beginner / spring / summer / autumn / winter / chill / vsleep / jp_community / popular。sort は favorites / name / author / newest / curator。

curl -s -A "my-app/1.0" "https://vrc.hachune.space/api/v1/worlds?season=autumn&sort=favorites"

アバターの人気ランキング(1ページ目)

GET GET /avatars mode は popular / rising / new / bookmark。1ページ100件で、page で進めます。

curl -s -A "my-app/1.0" "https://vrc.hachune.space/api/v1/avatars?mode=popular&page=1"

アバター1件の詳細(価格推移・対応アイテム)

GET GET /avatar-detail item_id は BOOTH の商品IDです。

curl -s -A "my-app/1.0" "https://vrc.hachune.space/api/v1/avatar-detail?item_id=3853613"

IDを指定してまとめて取得する(ブックマーク)

GET GET /avatars・/worlds mode=bookmark と ids(カンマ区切り・最大300件)。指定した順で返ります。

curl -s -A "my-app/1.0" "https://vrc.hachune.space/api/v1/avatars?mode=bookmark&ids=3853613,5380991"
curl -s -A "my-app/1.0" "https://vrc.hachune.space/api/v1/worlds?mode=bookmark&ids=wrld_aaeef9ec-c42e-4b95-870d-22bbc11a97aa"

結果を絞り込む・保存する

共通 jq が使えると、必要な項目だけ取り出せます。取得結果は手元に保存して使い回してください。

# 項目を絞る
curl -s -A "my-app/1.0" "https://vrc.hachune.space/api/v1/worlds?season=chill" | jq -r '.[:5][] | "\(.favorites)\t\(.name)"'
# ファイルに保存
curl -s -A "my-app/1.0" -o worlds-chill.json "https://vrc.hachune.space/api/v1/worlds?season=chill"

全ページを順に取得する(間隔を空ける)

GET GET /avatars has_more が false になるまで進めます。必ず間隔を空け、429 のときは Retry-After だけ待ってください。

for p in 1 2 3; do
  curl -s -A "my-app/1.0" "https://vrc.hachune.space/api/v1/avatars?mode=popular&page=$p" -o "avatars-$p.json"
  sleep 1
done