← 返回集成首页

JADE REALMS / 开发者文档

REST API 使用文档

公开目录和免费单模型文件都不需要账号或 API 密钥。付费包的介绍信息公开,付费文件继续执行网站原有的购买鉴权。

v1.0.0只读 · 无需 API 密钥OpenAPI JSON ↗

快速开始

搜索 → 查看详情 → 下载

cURL
curl --fail 'https://3dmodelhub.io/api/v1/models?q=pine&limit=2&locale=zh'

下方示例由当前已发布目录生成;数量、价格和请求 ID 可能随实际查询变化。

认证与访问规则

公开目录和免费单模型文件都不需要账号或 API 密钥。付费包的介绍信息公开,付费文件继续执行网站原有的购买鉴权。

Base URL
https://3dmodelhub.io/api/v1
API version
1.0.0
支持语言
en · zh · ja · ko · es · de · fr

GET 和 HEAD 用于读取,OPTIONS 用于跨域预检。浏览器请求使用 credentials: omit。参数区分大小写,未知、重复或越界参数返回 400。

元数据共用每 IP 每分钟 120 次的边缘保护,在 Cloudflare 各位置尽力执行;这不是免费文件的账号下载额度。

只返回公开且已发布的目录事实。未知值保留 null;引擎导入检查只适用于记录中的 GLB 哈希,不等于性能认证。

GET/api/v1/site

站点信息

获取当前公开目录的分类、风格、语言和统计。目录条目不一定都是独立模型,请同时读取 scope 说明。

jaderealms_get_site_info

请求参数必填默认值可选值与范围说明
localequery · string选填"en"en · zh · ja · ko · es · de · fr返回语言。
cURL
curl --fail 'https://3dmodelhub.io/api/v1/site?locale=zh'
响应示例 · HTTP 200

下方示例由当前已发布目录生成;数量、价格和请求 ID 可能随实际查询变化。

JSON
{
  "locale": "zh",
  "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": "科幻",
        "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/zh/",
      "models": "https://3dmodelhub.io/zh/models/",
      "kits": "https://3dmodelhub.io/zh/kits/",
      "guide": "https://3dmodelhub.io/zh/guide/",
      "license": "https://3dmodelhub.io/zh/license/"
    }
  },
  "meta": {
    "api_version": "1.0.0",
    "request_id": "0e3e3a36-f5dd-438c-85b5-d3140db0f6e5"
  }
}

GET/api/v1/models

搜索模型

使用关键词和结构化条件筛选模型。默认按精选顺序、再按 ID 排列;结果通过 offset 分页。分类与风格的可选值见 /site。

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选填81–20每页返回条数。
offsetquery · integer选填00–10000分页起始位置。
localequery · string选填"en"en · zh · ja · ko · es · de · fr返回语言。
cURL
curl --fail 'https://3dmodelhub.io/api/v1/models?q=pine&limit=2&locale=zh'
响应示例 · HTTP 200

下方示例由当前已发布目录生成;数量、价格和请求 ID 可能随实际查询变化。

JSON
{
  "locale": "zh",
  "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/zh/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": "cf0d2298-b5ee-472f-b977-811700c6aedf"
  }
}

GET/api/v1/models/{id}

模型详情

用搜索结果中的精确 ID 获取完整元数据,包括文件、材质、动画、尺寸及哈希对应的引擎检查记录。

jaderealms_get_model_details

请求参数必填默认值可选值与范围说明
idpath · string必填—^[A-Za-z0-9_-]+$ · 1–100使用列表返回的精确模型或套件 ID。
localequery · string选填"en"en · zh · ja · ko · es · de · fr返回语言。
cURL
curl --fail 'https://3dmodelhub.io/api/v1/models/ancient_pine?locale=zh'
响应示例 · HTTP 200

下方示例由当前已发布目录生成;数量、价格和请求 ID 可能随实际查询变化。

JSON
{
  "locale": "zh",
  "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/zh/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": "虚幻引擎:尚未验证"
    },
    "license": {
      "url": "https://3dmodelhub.io/zh/license/",
      "commercial_games_and_animation": true,
      "cc0_foundation_exception": false
    }
  },
  "meta": {
    "api_version": "1.0.0",
    "request_id": "b803d958-60f8-48e4-9452-a6fd99267838"
  }
}

GET/api/v1/kits

场景包列表

查看公开场景包、当前公开价格和交付摘要。这里没有个人已购状态。

jaderealms_list_scene_kits

请求参数必填默认值可选值与范围说明
localequery · string选填"en"en · zh · ja · ko · es · de · fr返回语言。
cURL
curl --fail 'https://3dmodelhub.io/api/v1/kits?locale=zh'
响应示例 · HTTP 200

下方示例由当前已发布目录生成;数量、价格和请求 ID 可能随实际查询变化。

JSON
{
  "locale": "zh",
  "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/zh/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/zh/kits/meteor-ancient-town/",
      "preview_url": "https://3dmodelhub.io/preview/meteor-ancient-town/",
      "license_url": "https://3dmodelhub.io/zh/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/zh/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/zh/scenes/moonlit-bamboo/",
      "preview_url": "https://3dmodelhub.io/zh/scenes/moonlit-bamboo/#preview",
      "license_url": "https://3dmodelhub.io/zh/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/zh/products/sunward-modern-town/",
        "checks": [
          "Blender 4.3.2 真实回导:175 个单件库 GLB 与 54 个镇 GLB 通过。",
          "单件 Godot 4.6.3 headless 导入:175 项资源、282 个碰撞形状与 846 个外侧样点通过。关闭有损 mesh 压缩后,395,326 个基础三角无退化。",
          "镇 Godot 4.6.3 headless 导入: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/zh/products/sunward-modern-town/",
      "preview_url": "https://3dmodelhub.io/preview/sunward-modern-town/",
      "license_url": "https://3dmodelhub.io/zh/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/zh/kits/creek-village/",
        "checks": [
          "草地阴影修复已在本地 Blender 材质预览播放中检查;记录对比表明,几何、物体变换、材质节点与动画保持不变。"
        ],
        "limitations": [
          "这是一个已布置的完整环境。场景物体和草地实例数量不代表独立模型种类。",
          "浏览器展示静态 GLB 适配版,程序材质、光照与原生动画效果可能不同。",
          "尚未完成 Godot、Unity 或 Unreal 导入,也未完成碰撞、导航与目标设备帧率验证。",
          "原生播放检查不等于最终 Cycles 动画渲染验收,也不能证明每一帧均无瑕疵。"
        ]
      },
      "detail_url": "https://3dmodelhub.io/zh/kits/creek-village/",
      "preview_url": "https://3dmodelhub.io/preview/creek-village/",
      "license_url": "https://3dmodelhub.io/zh/license/"
    }
  ],
  "meta": {
    "api_version": "1.0.0",
    "request_id": "d468b1af-42fb-439c-8023-1e5568e1199a"
  }
}

GET/api/v1/kits/{id}

场景包详情

获取一个场景包的公开组成、验证和交付信息。公开文件名与大小不授予付费文件访问权限。

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
curl --fail 'https://3dmodelhub.io/api/v1/kits/creek-village?locale=zh'
响应示例 · HTTP 200

下方示例由当前已发布目录生成;数量、价格和请求 ID 可能随实际查询变化。

JSON
{
  "locale": "zh",
  "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/zh/kits/creek-village/",
      "checks": [
        "草地阴影修复已在本地 Blender 材质预览播放中检查;记录对比表明,几何、物体变换、材质节点与动画保持不变。"
      ],
      "limitations": [
        "这是一个已布置的完整环境。场景物体和草地实例数量不代表独立模型种类。",
        "浏览器展示静态 GLB 适配版,程序材质、光照与原生动画效果可能不同。",
        "尚未完成 Godot、Unity 或 Unreal 导入,也未完成碰撞、导航与目标设备帧率验证。",
        "原生播放检查不等于最终 Cycles 动画渲染验收,也不能证明每一帧均无瑕疵。"
      ]
    },
    "detail_url": "https://3dmodelhub.io/zh/kits/creek-village/",
    "preview_url": "https://3dmodelhub.io/preview/creek-village/",
    "license_url": "https://3dmodelhub.io/zh/license/"
  },
  "meta": {
    "api_version": "1.0.0",
    "request_id": "35979623-3451-4283-af10-f2d9f2bed6ec"
  }
}

GET/api/v1/guidance

使用与许可说明

topic 为必填项:license、downloads、engines 或 purchases。许可最终以返回的 license 页面条款为准。

jaderealms_get_usage_guidance

请求参数必填默认值可选值与范围说明
topicquery · string必填—license · downloads · engines · purchases需要读取的公开说明主题。
localequery · string选填"en"en · zh · ja · ko · es · de · fr返回语言。
cURL
curl --fail 'https://3dmodelhub.io/api/v1/guidance?topic=license&locale=zh'
响应示例 · HTTP 200

下方示例由当前已发布目录生成;数量、价格和请求 ID 可能随实际查询变化。

JSON
{
  "locale": "zh",
  "data": {
    "topic": "license",
    "links": {
      "home": "https://3dmodelhub.io/zh/",
      "models": "https://3dmodelhub.io/zh/models/",
      "kits": "https://3dmodelhub.io/zh/kits/",
      "guide": "https://3dmodelhub.io/zh/guide/",
      "license": "https://3dmodelhub.io/zh/license/"
    },
    "confirmed": true,
    "commercial_games_and_animation": true,
    "raw_asset_resale": false,
    "repackaged_asset_distribution": false,
    "paid_pack_terms_url": "https://3dmodelhub.io/zh/license/",
    "cc0_exceptions": {
      "note": "Project redistribution restrictions do not override the disclosed CC0 foundation rights. Consult the exact source records.",
      "url": "https://3dmodelhub.io/zh/license/#cc0-foundations",
      "model_ids": [
        "ancient_east_water_buffalo",
        "anime_jrpg_coastal_wind_cliff"
      ]
    }
  },
  "meta": {
    "api_version": "1.0.0",
    "request_id": "5e703484-f1e6-4359-8f06-d4ad6b38521c"
  }
}

GET/api/v1/models/{id}/downloads

免费模型下载信息

获取免费 GLB 和完整 ZIP 的文件信息与下载地址。这个接口返回 JSON,文件内容需要再访问 files[].url。

jaderealms_get_model_downloads

请求参数必填默认值可选值与范围说明
idpath · string必填—^[A-Za-z0-9_-]+$ · 1–100使用列表返回的精确模型或套件 ID。
localequery · string选填"en"en · zh · ja · ko · es · de · fr返回语言。
cURL
curl --fail 'https://3dmodelhub.io/api/v1/models/ancient_pine/downloads?locale=zh'
响应示例 · HTTP 200

下方示例由当前已发布目录生成;数量、价格和请求 ID 可能随实际查询变化。

JSON
{
  "locale": "zh",
  "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/zh/license/",
      "commercial_games_and_animation": true,
      "cc0_foundation_exception": false
    }
  },
  "meta": {
    "api_version": "1.0.0",
    "request_id": "a36cd537-532a-4f34-b1c3-c352be5c5e4f"
  }
}

返回字段说明

JSON说明
data接口的实际结果。模型列表和套件列表是数组,详情是对象。
id / version条目的稳定 ID 和内容版本。详情路径使用 id,不要使用翻译后的名称。
name / name_en当前 locale 下的名称和英文名称。JSON 字段名、枚举值和 ID 不随语言改变。
category / category_name / styles分类代码、显示名称及风格代码数组;筛选时使用代码,不使用显示名称。
triangles / default_glb_bytes当前默认 GLB 的三角面数和字节数,均为整数。它们不代表整个 ZIP 的大小或场景运行性能。
materials / textures模型记录中的材质数量、图像纹理数量。
static / rigged / animation_count目录静态模型标记、实际绑定状态与动画数量。不要仅根据模型名称推断它有角色骨骼或动画。
available_formats / dimensions_m_y_up记录中的格式名称与米制、Y 轴向上的尺寸信息;尺寸未知时为 null。具体 ZIP 文件内容见文件说明。
locale这次响应使用的语言,默认 en。
meta.api_version / meta.request_idAPI 版本和本次请求标识。request_id 可用于排查实际请求,文档示例的 ID 仅属于示例。
pagination.total / next_offset符合当前筛选条件的总数,以及下一页起点;next_offset 为 null 表示结束。
scope / status / checked_on / parent_id条目范围、核验状态与日期、父场景。verified 仅确认当前 GLB 的内容及分类,不代表引擎认证。目录条目、提取模块和场景重复实例不能直接相加当作独立模型总数。
tested_engines / validation当前默认 GLB 哈希对应的引擎导入记录、检查范围和限制,不代表游戏帧率或其他引擎已验证。
download.files / filesGLB 与完整 ZIP 的格式、文件名、字节数、SHA256 和实际文件地址。此数组自身不是文件。
login_required / purchase_required该内容是否要求登录或购买。免费模型的两个值均为 false;付费包不会因此提供私人下载地址。
files[].purpose / recommended文件用途说明,以及建议的下载选择。complete_model_zip 表示优先取得完整单模型 ZIP。
detail_url / poster_url / preview_url / license_url模型详情、封面、场景预览和许可页面的绝对地址。预览地址是网站页面,不是模型文件地址。
price.amount_minor / currency金额使用最小货币单位的整数。例如 USD 的 799 表示 7.99 美元;null 表示未知,不能当作免费。
price.phase / policy / checkout_enabled当前价格阶段、定价策略及结账可用状态。价格由服务器当前配置计算,不是永久报价;API 本身不创建结账。
access / availability包的公开访问类型(free 或 paid_one_time)及可用状态(free_download、on_sale、unavailable)。应按实际返回判断。
contents.model_count / instance_count / source_model_ids源模型数量、场景放置实例数量及源条目 ID。实例、LOD 和碰撞代理不应重复计为独立模型。
ownership / delivery公开接口不查询账号持有状态。delivery 的公开文件名和大小不授予付费下载权限。
delivery.download_url只有场景包当前被设为免费时才可能公开此地址;付费包不包含这个字段。
license / guidance使用许可摘要和公开帮助内容。商业使用范围、禁止转卖和 CC0 例外请以链接的许可页及具体素材说明为准。
null来源未确认或该信息不适用;不要自动替换成 0、false 或“已验证”。

分页读取

持续使用 next_offset,直到它变成 null。翻页时保持筛选条件一致;total 表示符合当前筛选条件的条目数。

JavaScript
const base = "https://3dmodelhub.io/api/v1";
let offset = 0;
while (offset !== null) {
  const query = new URLSearchParams({ limit: '20', offset: String(offset), locale: "zh" });
  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 文件。免费文件无需登录或 API 密钥。

cURL · SHA256
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 密钥。付费包的介绍信息公开,付费文件继续执行网站原有的购买鉴权。

错误与重试

程序应判断 error.code 并保存 request_id,结合 HTTP 状态处理错误。错误消息使用英文。遇到 429 时按 Retry-After 等待,不要立即连续重试。

JSON · HTTP 400
{
  "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

HTTPerror.code说明
400InvalidArguments参数名拼错、重复参数、缺少 topic、limit 超出 1–20。
404NotFound没有对应的已发布条目,或请求了不开放的私人接口。
405MethodNotAllowedGET, HEAD, OPTIONS
414InvalidArgumentsURL > 4096
429RateLimitedRetry-After: 60

downloads 接口返回 JSON。继续访问 data.files 中的 url,才能下载实际 GLB 或 ZIP 文件。免费文件无需登录或 API 密钥。

文件下载还可能返回 416(Range 超出文件范围)或 503(存储或校验暂不可用);付费文件仍可能返回 401 / 402。请按响应状态处理,不要把 HTML 错误页保存成模型。

加入清单

新建清单