JADE REALMS / 開発者向けドキュメント
REST API リファレンス
公開情報と無料単体モデルにアカウントや API キーは不要です。有料パックのファイルはサイトの購入確認が必要です。
クイックスタート
検索 → 詳細 → ダウンロード
curl --fail 'https://3dmodelhub.io/api/v1/models?q=pine&limit=2&locale=ja'const response = await fetch("https://3dmodelhub.io/api/v1/models?q=pine&limit=2&locale=ja", {
credentials: 'omit',
headers: { Accept: 'application/json' }
});
const body = await response.json();
if (!response.ok) throw new Error(body.error?.code || response.status);
console.log(body.data);import json
from urllib.request import urlopen
with urlopen("https://3dmodelhub.io/api/v1/models?q=pine&limit=2&locale=ja") as response:
body = json.load(response)
print(body['data'])例は現在の公開カタログから生成されます。件数、価格、リクエスト ID は変わる場合があります。
認証とアクセス
公開情報と無料単体モデルにアカウントや API キーは不要です。有料パックのファイルはサイトの購入確認が必要です。
- Base URL
https://3dmodelhub.io/api/v1- API version
- 1.0.0
- 対応言語
- en · zh · ja · ko · es · de · fr
GET/HEAD は読み取り、OPTIONS は CORS 用です。ブラウザーは credentials: omit を使用します。不明、重複、範囲外パラメーターは 400 です。
メタデータは Cloudflare 拠点ごとに IP 当たり毎分 120 回のベストエフォート制限を共有します。無料ファイルのアカウント枠ではありません。
公開済みの事実のみを返します。不明値は null です。検証は記録された GLB ハッシュに適用され、性能保証ではありません。
GET/api/v1/site
サイト情報
Read published categories, styles, languages and counts. Catalog entries are not necessarily independent models; read the scope notes.
jaderealms_get_site_info
| リクエストパラメーター | 必須 | 既定値 | 許容値 | 説明 |
|---|---|---|---|---|
localequery · string | 任意 | "en" | en · zh · ja · ko · es · de · fr | 応答言語。 |
curl --fail 'https://3dmodelhub.io/api/v1/site?locale=ja'const response = await fetch("https://3dmodelhub.io/api/v1/site?locale=ja", {
credentials: 'omit',
headers: { Accept: 'application/json' }
});
const body = await response.json();
if (!response.ok) throw new Error(body.error?.code || response.status);
console.log(body.data);import json
from urllib.request import urlopen
with urlopen("https://3dmodelhub.io/api/v1/site?locale=ja") as response:
body = json.load(response)
print(body['data'])応答例 · HTTP 200
例は現在の公開カタログから生成されます。件数、価格、リクエスト ID は変わる場合があります。
{
"locale": "ja",
"data": {
"name": "JadeRealms",
"origin": "https://3dmodelhub.io",
"languages": [
{
"code": "en",
"tag": "en",
"label": "English"
},
{
"code": "zh",
"tag": "zh-CN",
"label": "中文"
},
{
"code": "ja",
"tag": "ja",
"label": "日本語"
},
{
"code": "ko",
"tag": "ko",
"label": "한국어"
},
{
"code": "es",
"tag": "es",
"label": "Español"
},
{
"code": "de",
"tag": "de",
"label": "Deutsch"
},
{
"code": "fr",
"tag": "fr",
"label": "Français"
}
],
"catalog": {
"verified_entries": 252,
"scope_verified_entries": 252,
"scope_pending_entries": 0,
"historical_entries": 251,
"separate_modules": 1,
"verified_atomic_model_total": null,
"verified_scene_packs": 4,
"count_note": "Catalog entries may be scenes, kits or entries of unverified scope. A parent scene and an extracted module are not counted as independent designs twice."
},
"categories": [
{
"id": "terrain",
"name": "岩・地形",
"count": 29
},
{
"id": "vegetation",
"name": "樹木・植物",
"count": 18
},
{
"id": "architecture",
"name": "建物・建築",
"count": 71
},
{
"id": "creatures",
"name": "生き物・動物",
"count": 30
},
{
"id": "props",
"name": "小物・オブジェクト",
"count": 96
},
{
"id": "environment",
"name": "環境パーツ",
"count": 8
}
],
"styles": [
{
"id": "ancient",
"name": "古風",
"count": 72
},
{
"id": "fantasy",
"name": "ファンタジー",
"count": 64
},
{
"id": "scifi",
"name": "SF",
"count": 22
},
{
"id": "modern",
"name": "現代",
"count": 23
},
{
"id": "toon",
"name": "カートゥーン",
"count": 78
},
{
"id": "anime",
"name": "アニメ・JRPG",
"count": 43
}
],
"access": {
"free_model_login_required": false,
"paid_pack_login_required": true,
"paid_pack_purchase_required": true,
"private_account_data_exposed": false
},
"links": {
"home": "https://3dmodelhub.io/ja/",
"models": "https://3dmodelhub.io/ja/models/",
"kits": "https://3dmodelhub.io/ja/kits/",
"guide": "https://3dmodelhub.io/ja/guide/",
"license": "https://3dmodelhub.io/ja/license/"
}
},
"meta": {
"api_version": "1.0.0",
"request_id": "07d25789-4c9d-4667-87c8-c45affce60fd"
}
}GET/api/v1/models
モデル検索
Filter by keyword and structured conditions. Default order is featured first, then ID; use offset for pagination. Read /site for category and style values.
jaderealms_search_models
| リクエストパラメーター | 必須 | 既定値 | 許容値 | 説明 |
|---|---|---|---|---|
qquery · string | 任意 | "" | ≤ 120 | 名称と説明のキーワード一致。意味検索ではありません。 |
categoryquery · string | 任意 | — | terrain · vegetation · architecture · creatures · props · environment | モデル分類。 |
stylequery · string | 任意 | — | ancient · fantasy · scifi · modern · toon · anime | スタイル。 |
tested_enginequery · string | 任意 | — | godot · unity · unreal | GLB ハッシュが一致するインポート記録。 |
max_trianglesquery · integer | 任意 | — | 1–100000000 | 最大三角形数。 |
limitquery · integer | 任意 | 8 | 1–20 | ページ件数。 |
offsetquery · integer | 任意 | 0 | 0–10000 | 開始位置。 |
localequery · string | 任意 | "en" | en · zh · ja · ko · es · de · fr | 応答言語。 |
curl --fail 'https://3dmodelhub.io/api/v1/models?q=pine&limit=2&locale=ja'const response = await fetch("https://3dmodelhub.io/api/v1/models?q=pine&limit=2&locale=ja", {
credentials: 'omit',
headers: { Accept: 'application/json' }
});
const body = await response.json();
if (!response.ok) throw new Error(body.error?.code || response.status);
console.log(body.data);import json
from urllib.request import urlopen
with urlopen("https://3dmodelhub.io/api/v1/models?q=pine&limit=2&locale=ja") as response:
body = json.load(response)
print(body['data'])応答例 · HTTP 200
例は現在の公開カタログから生成されます。件数、価格、リクエスト ID は変わる場合があります。
{
"locale": "ja",
"data": [
{
"id": "ancient_pine",
"name": "古い松の木",
"name_en": "Ancient Pine",
"category": "vegetation",
"category_name": "樹木・植物",
"styles": [
"ancient",
"fantasy"
],
"triangles": 135682,
"default_glb_bytes": 19271052,
"static": true,
"scope": {
"type": "independent_functional_object",
"status": "verified",
"checked_on": "2026-10-22",
"evidence": "verified_actual_glb_and_three_view_classification",
"parent_id": null,
"historical_count_increment": 1
},
"tested_engines": [
"godot",
"unity"
],
"detail_url": "https://3dmodelhub.io/ja/models/ancient_pine/",
"poster_url": "https://3dmodelhub.io/media/ancient_pine-1280.jpg"
}
],
"pagination": {
"total": 1,
"limit": 2,
"offset": 0,
"next_offset": null
},
"sort": "featured_then_id",
"meta": {
"api_version": "1.0.0",
"request_id": "67829aa5-2747-4d26-8c6b-b0beff3f89bd"
}
}GET/api/v1/models/{id}
モデル詳細
Use an exact ID from search to get files, materials, animations, dimensions and hash-matched engine checks.
jaderealms_get_model_details
| リクエストパラメーター | 必須 | 既定値 | 許容値 | 説明 |
|---|---|---|---|---|
idpath · string | 必須 | — | ^[A-Za-z0-9_-]+$ · 1–100 | 一覧で返された正確な ID。 |
localequery · string | 任意 | "en" | en · zh · ja · ko · es · de · fr | 応答言語。 |
curl --fail 'https://3dmodelhub.io/api/v1/models/ancient_pine?locale=ja'const response = await fetch("https://3dmodelhub.io/api/v1/models/ancient_pine?locale=ja", {
credentials: 'omit',
headers: { Accept: 'application/json' }
});
const body = await response.json();
if (!response.ok) throw new Error(body.error?.code || response.status);
console.log(body.data);import json
from urllib.request import urlopen
with urlopen("https://3dmodelhub.io/api/v1/models/ancient_pine?locale=ja") as response:
body = json.load(response)
print(body['data'])応答例 · HTTP 200
例は現在の公開カタログから生成されます。件数、価格、リクエスト ID は変わる場合があります。
{
"locale": "ja",
"data": {
"id": "ancient_pine",
"name": "古い松の木",
"name_en": "Ancient Pine",
"category": "vegetation",
"category_name": "樹木・植物",
"styles": [
"ancient",
"fantasy"
],
"triangles": 135682,
"default_glb_bytes": 19271052,
"static": true,
"scope": {
"type": "independent_functional_object",
"status": "verified",
"checked_on": "2026-10-22",
"evidence": "verified_actual_glb_and_three_view_classification",
"parent_id": null,
"historical_count_increment": 1
},
"tested_engines": [
"godot",
"unity"
],
"detail_url": "https://3dmodelhub.io/ja/models/ancient_pine/",
"poster_url": "https://3dmodelhub.io/media/ancient_pine-1280.jpg",
"version": "Ancient_Pine_Runtime_v1",
"materials": 5,
"textures": 8,
"available_formats": [
"GLB",
"Blender"
],
"rigged": false,
"animation_count": 0,
"dimensions_m_y_up": null,
"download": {
"login_required": false,
"purchase_required": false,
"recommended": "complete_model_zip",
"files": [
{
"format": "GLB",
"purpose": "Direct default model with embedded materials",
"filename": "ancient_pine_LOD1.glb",
"bytes": 19271052,
"sha256": "2301433ad1795a0bff44b55d65f6ad81e2f94c5e3f15fa0eb7dcdc38a8bb6bbb",
"url": "https://3dmodelhub.io/download/ancient_pine/model-0/"
},
{
"format": "ZIP",
"purpose": "Complete files for this model, including Blender sources and textures",
"filename": "ancient_pine_complete.zip",
"bytes": 41762903,
"sha256": "1529b0170d56bab328c6bf7688009b0359fd390b5491b2a4689b7c9c9125a631",
"url": "https://3dmodelhub.io/download/ancient_pine/package/"
}
]
},
"validation": {
"source_glb_sha256": "2301433ad1795a0bff44b55d65f6ad81e2f94c5e3f15fa0eb7dcdc38a8bb6bbb",
"checks": [
{
"engine": "godot",
"version": "4.7.2",
"status": "passed",
"adaptations": [],
"verified_on": "2026-10-19",
"scope": "desktop_import_materials_static_render",
"report_sha256": "56ab80f9590d2708d689fe6fa1f446c19f3a39e9b71b3013ea3737f35c6ade2a"
},
{
"importer": "com.unity.cloud.gltfast 6.14.1",
"engine": "unity",
"version": "6000.6.6f1",
"status": "passed",
"adaptations": [],
"verified_on": "2026-10-19",
"scope": "desktop_import_materials_static_render",
"report_sha256": "a3034b63e1d70b6970ef6aca228012fc8b76765f2cdaa7c828735f1f46d9c3f4"
}
],
"limitations": "現在の既定GLBのデスクトップ静的検証のみ。性能、リグ、アニメーション、モデルのコリジョン、自動LODは認証していません。",
"unreal": "Unreal Engine:未検証"
},
"license": {
"url": "https://3dmodelhub.io/ja/license/",
"commercial_games_and_animation": true,
"cc0_foundation_exception": false
}
},
"meta": {
"api_version": "1.0.0",
"request_id": "393ece4d-94f4-4f7a-aaf3-e1926a105cdd"
}
}GET/api/v1/kits
シーンパック
Read public scene packs, current public prices and delivery summaries. Personal ownership is not queried.
jaderealms_list_scene_kits
| リクエストパラメーター | 必須 | 既定値 | 許容値 | 説明 |
|---|---|---|---|---|
localequery · string | 任意 | "en" | en · zh · ja · ko · es · de · fr | 応答言語。 |
curl --fail 'https://3dmodelhub.io/api/v1/kits?locale=ja'const response = await fetch("https://3dmodelhub.io/api/v1/kits?locale=ja", {
credentials: 'omit',
headers: { Accept: 'application/json' }
});
const body = await response.json();
if (!response.ok) throw new Error(body.error?.code || response.status);
console.log(body.data);import json
from urllib.request import urlopen
with urlopen("https://3dmodelhub.io/api/v1/kits?locale=ja") as response:
body = json.load(response)
print(body['data'])応答例 · HTTP 200
例は現在の公開カタログから生成されます。件数、価格、リクエスト ID は変わる場合があります。
{
"locale": "ja",
"data": [
{
"id": "meteor-ancient-town",
"name": "流星古鎮 · 水辺の茶街",
"summary": "運河、石橋、茶楼が並ぶ街を元モデルで探索。視点と昼夜の照明を切り替えられます。",
"version": "v02",
"access": "paid_one_time",
"login_required": true,
"ownership": "not_queried",
"availability": "on_sale",
"price": {
"amount_minor": 799,
"currency": "usd",
"phase": "intro",
"policy": "intro_then_standard",
"intro_amount_minor": 799,
"standard_amount_minor": 999,
"launch_at": "2026-10-21T16:03:49.190Z",
"intro_ends_at": "2026-11-20T16:03:49.190Z",
"checkout_enabled": true,
"mode": "live"
},
"contents": {
"source_catalog": "models",
"model_count": 9,
"instance_count": 41,
"counts_note": "Instances, LOD files and collision proxies are not additional independent models.",
"source_model_ids": [
"tea_house",
"moon_gate",
"arched_stone_bridge",
"crimson_maple",
"weeping_willow",
"stone_lantern",
"courtyard_wall_corner",
"open_tea_pavilion",
"bamboo_stand"
],
"source_model_access": "free_catalog"
},
"delivery": {
"filename": "Meteor_Ancient_Town_Complete_v02.zip",
"bytes": 876519048,
"format": "ZIP",
"download_ready": true,
"access_note": "Sign in, purchase this pack, and use the download button on its original page. This response does not grant access."
},
"validation": {
"details_url": "https://3dmodelhub.io/ja/kits/meteor-ancient-town/",
"checks": [],
"limitations": [
"Engine checks differ between scene packs. Consult this pack detail page; checks on individual source models do not certify whole-scene performance."
]
},
"detail_url": "https://3dmodelhub.io/ja/kits/meteor-ancient-town/",
"preview_url": "https://3dmodelhub.io/preview/meteor-ancient-town/?lang=ja",
"license_url": "https://3dmodelhub.io/ja/license/"
},
{
"id": "moonlit-bamboo",
"name": "月門と竹の影",
"summary": "円形門、石灯籠、竹と岩が織りなす静かな中庭。元モデルを回転・拡大し、昼夜を切り替えて細部をご覧ください。",
"version": "v02",
"access": "paid_one_time",
"login_required": true,
"ownership": "not_queried",
"availability": "on_sale",
"price": {
"amount_minor": 399,
"currency": "usd",
"phase": "intro",
"policy": "intro_then_standard",
"intro_amount_minor": 399,
"standard_amount_minor": 599,
"launch_at": "2026-10-21T16:03:49.190Z",
"intro_ends_at": "2026-11-20T16:03:49.190Z",
"checkout_enabled": true,
"mode": "live"
},
"contents": {
"source_catalog": "models",
"model_count": 4,
"instance_count": 7,
"counts_note": "Instances, LOD files and collision proxies are not additional independent models.",
"source_model_ids": [
"moon_gate",
"stone_lantern",
"bamboo_stand",
"moss_boulders"
],
"source_model_access": "free_catalog"
},
"delivery": {
"filename": "Moonlit_Bamboo_Complete_v02.zip",
"bytes": 234657922,
"format": "ZIP",
"download_ready": true,
"access_note": "Sign in, purchase this pack, and use the download button on its original page. This response does not grant access."
},
"validation": {
"details_url": "https://3dmodelhub.io/ja/scenes/moonlit-bamboo/",
"checks": [],
"limitations": [
"Engine checks differ between scene packs. Consult this pack detail page; checks on individual source models do not certify whole-scene performance."
]
},
"detail_url": "https://3dmodelhub.io/ja/scenes/moonlit-bamboo/",
"preview_url": "https://3dmodelhub.io/ja/scenes/moonlit-bamboo/#preview",
"license_url": "https://3dmodelhub.io/ja/license/"
},
{
"id": "sunward-modern-town",
"name": "Sunward モダンタウン",
"summary": "クリーム色の建物、青緑の店舗、連続する街路が織りなす明るい町。商店街、住宅、公共空間をゲーム環境の制作に利用できます。",
"version": "v02",
"access": "paid_one_time",
"login_required": true,
"ownership": "not_queried",
"availability": "on_sale",
"price": {
"amount_minor": 799,
"currency": "usd",
"phase": "fixed",
"policy": "fixed",
"intro_amount_minor": 799,
"standard_amount_minor": 799,
"launch_at": "2026-10-21T16:03:49.190Z",
"intro_ends_at": null,
"checkout_enabled": true,
"mode": "live"
},
"contents": {
"source_catalog": "sunward",
"model_count": 72,
"instance_count": 128,
"counts_note": "Instances, LOD files and collision proxies are not additional independent models.",
"source_model_ids": [
"balcony_platform",
"balcony_railing",
"column",
"corner_external",
"corner_internal",
"cornice",
"exterior_stair",
"foundation_step",
"parapet_corner",
"parapet_straight",
"porch_canopy",
"roof_flat",
"roof_hvac",
"roof_pitched_end",
"roof_pitched_middle",
"shop_awning",
"solar_rack",
"wall_entry",
"wall_shop_entry",
"wall_shop_window",
"wall_solid",
"wall_window",
"crosswalk_marking",
"curb_ramp",
"drain_channel",
"parking_marking",
"plaza_paving",
"road_cross_junction",
"road_curve",
"road_straight",
"road_t_junction",
"sidewalk_external_corner",
"sidewalk_internal_corner",
"sidewalk_straight",
"bollard",
"direction_sign",
"fire_hydrant",
"fountain",
"menu_board",
"planter",
"shop_hanging_sign",
"traffic_light",
"tree_broadleaf",
"tree_street_tall",
"tree_pine_layered",
"tree_blossom",
"shrub_leafy",
"fern_arching",
"grass_upright",
"grass_arching",
"rock_single",
"flowers_meadow",
"bus_shelter",
"bus_stop_sign",
"trash_bin",
"recycling_bin",
"post_box",
"parcel_locker",
"bicycle_rack",
"bicycle",
"bench",
"street_lamp",
"notice_board",
"drinking_fountain",
"car_compact",
"delivery_van",
"vending_machine",
"cafe_table",
"cafe_chair",
"patio_umbrella",
"shop_crate",
"ev_charger"
],
"source_model_access": "paid_pack_only"
},
"delivery": {
"filename": "Sunward_Modern_Town_Complete_v02.zip",
"bytes": 685144857,
"format": "ZIP",
"download_ready": true,
"access_note": "Sign in, purchase this pack, and use the download button on its original page. This response does not grant access."
},
"validation": {
"details_url": "https://3dmodelhub.io/ja/products/sunward-modern-town/",
"checks": [
"Blender 4.3.2:単体175 GLBと町54 GLBを実際に再読み込みして検証。",
"単体Godot 4.6.3 headless:175リソース、282形状、846外側サンプルに合格。非可逆圧縮を無効にして395,326基本三角形に縮退なし。",
"町Godot 4.6.3:54 GLBと30画像。既定17とコリジョン17を同時検証し、410要素、1,230外側サンプル、560キャラクター尺度サンプル、8指定経路に合格。"
],
"limitations": [
"建物の外観のみ。室内、キャラクター、ミッション、運転、店舗操作は含みません。",
"自動LOD、ストリーミング、全域ナビゲーション、完全なキャラクター操作は未提供。",
"コリジョンは建物外殻と地面が対象。すべての街具、幹、小障害物は対象外。8経路の検証は町全体の通行保証ではありません。",
"GodotはKHR_materials_iorを適用しないため、ガラスの見え方はエンジン間で異なります。",
"GPUフレームレート、Unity/Unreal、モバイル認証は未検証です。",
"建物の組み合わせには繰り返しがあります。LOD0詳細は代表26棟のみで、残り102棟は同じ詳細度ではありません。既定の町は5,358,342三角形で対象機器向けの最適化が必要です。技術検証は最終的な商用外観承認ではありません。検証済みruntime/Collision GLBを使用してください。"
]
},
"detail_url": "https://3dmodelhub.io/ja/products/sunward-modern-town/",
"preview_url": "https://3dmodelhub.io/preview/sunward-modern-town/?lang=ja",
"license_url": "https://3dmodelhub.io/ja/license/"
},
{
"id": "creek-village",
"name": "クリーク・ビレッジ V5",
"summary": "草の斜面、小川、水車に囲まれた小さな村。草地の影を修正した編集可能な V5 Blender シーンを収録。",
"version": "v05",
"access": "paid_one_time",
"login_required": true,
"ownership": "not_queried",
"availability": "on_sale",
"price": {
"amount_minor": 599,
"currency": "usd",
"phase": "fixed",
"policy": "fixed",
"intro_amount_minor": 599,
"standard_amount_minor": 599,
"launch_at": "2026-10-22T01:05:44.321Z",
"intro_ends_at": null,
"checkout_enabled": true,
"mode": "live"
},
"contents": {
"source_catalog": "blender-scene",
"model_count": null,
"instance_count": null,
"counts_note": "Instances, LOD files and collision proxies are not additional independent models.",
"source_model_ids": [],
"source_model_access": "paid_pack_only"
},
"delivery": {
"filename": "Creek_Village_V5_Complete_v05.zip",
"bytes": 28490117,
"format": "ZIP",
"download_ready": true,
"access_note": "Sign in, purchase this pack, and use the download button on its original page. This response does not grant access."
},
"validation": {
"details_url": "https://3dmodelhub.io/ja/kits/creek-village/",
"checks": [
"草地の影の修正はローカルBlenderのマテリアルプレビュー再生で確認しました。記録上、形状・物体変換・マテリアルノード・アニメーションは保持されています。"
],
"limitations": [
"配置済みの一つの環境です。シーンの物体や草のインスタンス数は独立モデルの種類数ではありません。",
"ブラウザーは静的GLB版です。Blenderの手続き型素材、照明、原本のアニメーションとは異なります。",
"Godot・Unity・Unrealの読込、衝突、ナビゲーション、対象端末FPSは未検証です。",
"原本再生の確認は最終Cyclesアニメーションレンダリングの合格や全フレームの無欠陥を保証しません。"
]
},
"detail_url": "https://3dmodelhub.io/ja/kits/creek-village/",
"preview_url": "https://3dmodelhub.io/preview/creek-village/?lang=ja",
"license_url": "https://3dmodelhub.io/ja/license/"
}
],
"meta": {
"api_version": "1.0.0",
"request_id": "00fc267e-d781-4a68-84df-9089d943aa9b"
}
}GET/api/v1/kits/{id}
パック詳細
Read one pack’s public contents, validation and delivery metadata. A filename and size grant no paid-file access.
jaderealms_get_scene_kit_details
| リクエストパラメーター | 必須 | 既定値 | 許容値 | 説明 |
|---|---|---|---|---|
idpath · string | 必須 | — | ^[A-Za-z0-9_-]+$ · 1–100 | 一覧で返された正確な ID。 |
localequery · string | 任意 | "en" | en · zh · ja · ko · es · de · fr | 応答言語。 |
curl --fail 'https://3dmodelhub.io/api/v1/kits/creek-village?locale=ja'const response = await fetch("https://3dmodelhub.io/api/v1/kits/creek-village?locale=ja", {
credentials: 'omit',
headers: { Accept: 'application/json' }
});
const body = await response.json();
if (!response.ok) throw new Error(body.error?.code || response.status);
console.log(body.data);import json
from urllib.request import urlopen
with urlopen("https://3dmodelhub.io/api/v1/kits/creek-village?locale=ja") as response:
body = json.load(response)
print(body['data'])応答例 · HTTP 200
例は現在の公開カタログから生成されます。件数、価格、リクエスト ID は変わる場合があります。
{
"locale": "ja",
"data": {
"id": "creek-village",
"name": "クリーク・ビレッジ V5",
"summary": "草の斜面、小川、水車に囲まれた小さな村。草地の影を修正した編集可能な V5 Blender シーンを収録。",
"version": "v05",
"access": "paid_one_time",
"login_required": true,
"ownership": "not_queried",
"availability": "on_sale",
"price": {
"amount_minor": 599,
"currency": "usd",
"phase": "fixed",
"policy": "fixed",
"intro_amount_minor": 599,
"standard_amount_minor": 599,
"launch_at": "2026-10-22T01:05:44.321Z",
"intro_ends_at": null,
"checkout_enabled": true,
"mode": "live"
},
"contents": {
"source_catalog": "blender-scene",
"model_count": null,
"instance_count": null,
"counts_note": "Instances, LOD files and collision proxies are not additional independent models.",
"source_model_ids": [],
"source_model_access": "paid_pack_only"
},
"delivery": {
"filename": "Creek_Village_V5_Complete_v05.zip",
"bytes": 28490117,
"format": "ZIP",
"download_ready": true,
"access_note": "Sign in, purchase this pack, and use the download button on its original page. This response does not grant access."
},
"validation": {
"details_url": "https://3dmodelhub.io/ja/kits/creek-village/",
"checks": [
"草地の影の修正はローカルBlenderのマテリアルプレビュー再生で確認しました。記録上、形状・物体変換・マテリアルノード・アニメーションは保持されています。"
],
"limitations": [
"配置済みの一つの環境です。シーンの物体や草のインスタンス数は独立モデルの種類数ではありません。",
"ブラウザーは静的GLB版です。Blenderの手続き型素材、照明、原本のアニメーションとは異なります。",
"Godot・Unity・Unrealの読込、衝突、ナビゲーション、対象端末FPSは未検証です。",
"原本再生の確認は最終Cyclesアニメーションレンダリングの合格や全フレームの無欠陥を保証しません。"
]
},
"detail_url": "https://3dmodelhub.io/ja/kits/creek-village/",
"preview_url": "https://3dmodelhub.io/preview/creek-village/?lang=ja",
"license_url": "https://3dmodelhub.io/ja/license/"
},
"meta": {
"api_version": "1.0.0",
"request_id": "5fa6b8f5-973b-4632-9117-0f9043361f59"
}
}GET/api/v1/guidance
利用とライセンス
topic is required: license, downloads, engines or purchases. The linked license page contains the applicable terms.
jaderealms_get_usage_guidance
| リクエストパラメーター | 必須 | 既定値 | 許容値 | 説明 |
|---|---|---|---|---|
topicquery · string | 必須 | — | license · downloads · engines · purchases | 公開ガイダンスの種類。 |
localequery · string | 任意 | "en" | en · zh · ja · ko · es · de · fr | 応答言語。 |
curl --fail 'https://3dmodelhub.io/api/v1/guidance?topic=license&locale=ja'const response = await fetch("https://3dmodelhub.io/api/v1/guidance?topic=license&locale=ja", {
credentials: 'omit',
headers: { Accept: 'application/json' }
});
const body = await response.json();
if (!response.ok) throw new Error(body.error?.code || response.status);
console.log(body.data);import json
from urllib.request import urlopen
with urlopen("https://3dmodelhub.io/api/v1/guidance?topic=license&locale=ja") as response:
body = json.load(response)
print(body['data'])応答例 · HTTP 200
例は現在の公開カタログから生成されます。件数、価格、リクエスト ID は変わる場合があります。
{
"locale": "ja",
"data": {
"topic": "license",
"links": {
"home": "https://3dmodelhub.io/ja/",
"models": "https://3dmodelhub.io/ja/models/",
"kits": "https://3dmodelhub.io/ja/kits/",
"guide": "https://3dmodelhub.io/ja/guide/",
"license": "https://3dmodelhub.io/ja/license/"
},
"confirmed": true,
"commercial_games_and_animation": true,
"raw_asset_resale": false,
"repackaged_asset_distribution": false,
"paid_pack_terms_url": "https://3dmodelhub.io/ja/license/",
"cc0_exceptions": {
"note": "Project redistribution restrictions do not override the disclosed CC0 foundation rights. Consult the exact source records.",
"url": "https://3dmodelhub.io/ja/license/#cc0-foundations",
"model_ids": [
"ancient_east_water_buffalo",
"anime_jrpg_coastal_wind_cliff"
]
}
},
"meta": {
"api_version": "1.0.0",
"request_id": "88e612f2-7326-41ed-92d1-7cb45666fa2a"
}
}GET/api/v1/models/{id}/downloads
無料ダウンロード情報
Get free GLB and complete ZIP metadata and URLs. This endpoint returns JSON; follow files[].url to receive the actual bytes.
jaderealms_get_model_downloads
| リクエストパラメーター | 必須 | 既定値 | 許容値 | 説明 |
|---|---|---|---|---|
idpath · string | 必須 | — | ^[A-Za-z0-9_-]+$ · 1–100 | 一覧で返された正確な ID。 |
localequery · string | 任意 | "en" | en · zh · ja · ko · es · de · fr | 応答言語。 |
curl --fail 'https://3dmodelhub.io/api/v1/models/ancient_pine/downloads?locale=ja'const response = await fetch("https://3dmodelhub.io/api/v1/models/ancient_pine/downloads?locale=ja", {
credentials: 'omit',
headers: { Accept: 'application/json' }
});
const body = await response.json();
if (!response.ok) throw new Error(body.error?.code || response.status);
console.log(body.data);import json
from urllib.request import urlopen
with urlopen("https://3dmodelhub.io/api/v1/models/ancient_pine/downloads?locale=ja") as response:
body = json.load(response)
print(body['data'])応答例 · HTTP 200
例は現在の公開カタログから生成されます。件数、価格、リクエスト ID は変わる場合があります。
{
"locale": "ja",
"data": {
"id": "ancient_pine",
"version": "Ancient_Pine_Runtime_v1",
"login_required": false,
"purchase_required": false,
"recommended": "complete_model_zip",
"files": [
{
"format": "GLB",
"purpose": "Direct default model with embedded materials",
"filename": "ancient_pine_LOD1.glb",
"bytes": 19271052,
"sha256": "2301433ad1795a0bff44b55d65f6ad81e2f94c5e3f15fa0eb7dcdc38a8bb6bbb",
"url": "https://3dmodelhub.io/download/ancient_pine/model-0/"
},
{
"format": "ZIP",
"purpose": "Complete files for this model, including Blender sources and textures",
"filename": "ancient_pine_complete.zip",
"bytes": 41762903,
"sha256": "1529b0170d56bab328c6bf7688009b0359fd390b5491b2a4689b7c9c9125a631",
"url": "https://3dmodelhub.io/download/ancient_pine/package/"
}
],
"license": {
"url": "https://3dmodelhub.io/ja/license/",
"commercial_games_and_animation": true,
"cc0_foundation_exception": false
}
},
"meta": {
"api_version": "1.0.0",
"request_id": "4b07e196-54a5-444c-bf66-e0d90533606b"
}
}応答フィールド
| JSON | 説明 |
|---|---|
data | The endpoint result: arrays for model/pack lists, objects for details. |
id / version | Stable entry ID and content version. Use the ID, not a translated name, in detail paths. |
name / name_en | Localized and English names. JSON names, enum values and IDs are independent of locale. |
category / category_name / styles | Category code, display label and style code array. Filter using codes, not labels. |
triangles / default_glb_bytes | Triangle count and byte size of the default GLB, as integers. Not ZIP size or scene performance. |
materials / textures | Recorded counts of materials and texture images. |
static / rigged / animation_count | Catalog static marker, rigging flag and animation count. A character name does not imply a rig or animation. |
available_formats / dimensions_m_y_up | Recorded formats and dimensions in meters with Y up; null when unknown. Check file notes for actual ZIP contents. |
locale | Response language; en by default. |
meta.api_version / meta.request_id | API version and request identifier. An ID shown in an example does not identify your own request. |
pagination.total / next_offset | Matching rows and the next offset; null means the final page. |
scope / status / checked_on / parent_id | Entry scope, verification status and date, and parent scene. verified confirms current GLB contents and classification, not engine certification. Entries, extracted modules and repeated instances are different counts. |
tested_engines / validation | Hash-matched engine import records and their scope; not a performance or other-engine certificate. |
download.files / files | GLB/ZIP format, filename, bytes, SHA256 and file URL. The array itself is not the file. |
login_required / purchase_required | Whether sign-in or purchase is required. Both are false for free models; paid packs do not expose private URLs. |
files[].purpose / recommended | Purpose of each file and recommended choice. complete_model_zip recommends the complete single-model ZIP. |
detail_url / poster_url / preview_url / license_url | Absolute detail, poster, scene preview and license page URLs. A preview page is not a model file. |
price.amount_minor / currency | Integer minor currency units: USD 799 means US$7.99. null means unknown, not free. |
price.phase / policy / checkout_enabled | Current price phase, pricing policy and checkout availability. Server-calculated prices may change; this API creates no checkout. |
access / availability | Pack access (free or paid_one_time) and availability (free_download, on_sale, unavailable). Follow the returned state. |
contents.model_count / instance_count / source_model_ids | Source model count, scene instance count and source IDs. Instances, LODs and collision proxies are not extra independent models. |
ownership / delivery | Public metadata does not query account ownership. Public delivery names and sizes grant no paid-file access. |
delivery.download_url | May appear only while the pack is publicly free. Omitted for paid packs. |
license / guidance | License summaries and public guidance. Read the linked terms and asset-specific notes for commercial use, resale restrictions and CC0 exceptions. |
null | Unknown or inapplicable; do not silently replace with 0, false or a verified claim. |
ページネーション
next_offset が null になるまで取得します。ページ間でフィルターを維持してください。total は一致件数です。
const base = "https://3dmodelhub.io/api/v1";
let offset = 0;
while (offset !== null) {
const query = new URLSearchParams({ limit: '20', offset: String(offset), locale: "ja" });
const response = await fetch(base + '/models?' + query, { credentials: 'omit' });
const body = await response.json();
if (!response.ok) throw new Error(body.error?.code || response.status);
for (const model of body.data) console.log(model.id, model.name);
offset = body.pagination.next_offset;
}ファイルの取得
downloads は JSON を返します。data.files の url から実際の GLB または ZIP を取得します。無料ファイルは認証不要です。
curl --fail --location --output 'ancient_pine_LOD1.glb' 'https://3dmodelhub.io/download/ancient_pine/model-0/'
curl --fail --location --output 'ancient_pine_complete.zip' 'https://3dmodelhub.io/download/ancient_pine/package/'
# macOS: compare the first column with data.files[].sha256
shasum -a 256 'ancient_pine_LOD1.glb'Range: bytes=0-1023 · 206 Partial Content · ETag / If-Range
公開情報と無料単体モデルにアカウントや API キーは不要です。有料パックのファイルはサイトの購入確認が必要です。
エラーと再試行
HTTP ステータスと error.code を確認し、request_id を保存します。メッセージは英語です。429 では Retry-After を待ってください。
{
"error": {
"code": "InvalidArguments",
"message": "Check the documented parameters and their allowed values."
},
"request_id": "00000000-0000-4000-8000-000000000000"
}X-Request-Id = request_id · Access-Control-Allow-Origin: * · Cache-Control: no-store
| HTTP | error.code | 説明 |
|---|---|---|
| 400 | InvalidArguments | Unknown/repeated argument, missing topic, or limit outside 1–20. |
| 404 | NotFound | No published entry or no public endpoint. |
| 405 | MethodNotAllowed | GET, HEAD, OPTIONS |
| 414 | InvalidArguments | URL > 4096 |
| 429 | RateLimited | Retry-After: 60 |
downloads は JSON を返します。data.files の url から実際の GLB または ZIP を取得します。無料ファイルは認証不要です。
File routes may also return 416 for invalid ranges or 503 for storage/integrity failures; paid files may return 401/402. Check status before saving a response as a model.