版本库 JSON 数据源文档¶

版本库 JSON 数据源文档¶

我们维护了一个可以获取基岩版各个版本信息的 json 数据源供开发者使用,该数据源随版本库一同更新。

数据源若出现任何问题欢迎向我们反馈,我们会及时纠正:

QQ: 2598814466

Email: [email protected]

Bilibili(B站): @RemyYYZ(UUID:1276466214)

Telegram:@Remy_YYZ(May not respond in a timely manner)

反馈中心:https://mcappx.zulipchat.com/#narrow/channel/556317

唯一的调用要求:您所开发的公开项目如需调用该数据源,请必须标注来源于 mcappx.com

JSON 数据结构及解释¶

v2v1 (停止更新)

调用URLhttps://data.mcappx.com/v2/bedrock.json

数据源服务器针对某些地区屏蔽,若需要在屏蔽地区内请求数据源,可以向我们申请访问权限

示例数据{

"CreationTime": "2025-10-18T12:30:25.141684+00:00", //json数据源创建时间

"From_mcappx.com": {

"1.21.100.24": {

"Type": "Preview",

"BuildType": "UWP",

"ID": "1.21.10024",

"Date": "2025-07-16",

"Variations": [

{

"Arch": "x64",

"ArchivalStatus": 3,

"OSbuild": "19041",

"MetaData": [

"7952cc8f-44e9-4ef9-89ed-b9c709a84001"

],

"MD5": "397a90812645363ab11a40df01e63e43"

},

{

"Arch": "x86",

"ArchivalStatus": 3,

"OSbuild": "19041",

"MetaData": [

"136d488b-adcc-4cd0-a69f-1a2271fe3694"

],

"MD5": "513abf1e3b5c92c0df9c63adaeea2180"

}

]

},

"1.21.120.21": {

"Type": "Preview",

"BuildType": "GDK",

"ID": "1.21.12021",

"Date": "2025-09-09",

"Variations": [

{

"Arch": "x64",

"ArchivalStatus": 3,

"OSbuild": "18362",

"MetaData": [

"http://assets1.xboxlive.cn/12/66b02bc1-c4f1-4986-a183-c23e00cccecb/98bd2335-9b01-4e4c-bd05-ccc01614078b/1.21.12021.0.e5cfeb9c-2eaa-4959-8a49-e82cde29702a/Microsoft.MinecraftWindowsBeta_1.21.12021.0_x64__8wekyb3d8bbwe.msixvc"

],

"MD5": "36b590a36446b1cfc677bd1fbfbed04d"

}

]

}

}

}

版本对象字段说明:

字段名

类型

示例

描述

是否可能为空(为空时的值)

Type

string

"Release"

版本类型(有 Release/Beta/Preview)

BuildType

string

"GDK"

构建类型(有 UWP/GDK)

ID

string

"1.21.10024"

安装包ID

("")

Date

string

"2025-07-16"

版本发布时间(ISO 格式)

("")

Variations

array of object

[...]

各系统架构变体信息列表

Variations 数组结构说明:

字段名

类型

示例值

描述

是否可能为空(为空时的值)

Arch

string

"x64"

架构类型(如 x64/x86/arm)

ArchivalStatus

integer

3

存档状态代码

OSbuild

string

"19041"

游戏适用的最低 Windows 版本构建号

("")

MetaData

array of string

["7952cc8f-..."] ["http://assets1.xbox..."]

关联的元数据(与BuildType有关,若BuildType的值为UWP,对应的元数据为UpdateID;若为GDK,对应的元数据为原始包msixvc的下载链接)

([])

MD5

string

"397a9081..."

该版本对应原始包的 MD5 校验值

("")

调用URLhttps://data.mcappx.com/v1/bedrock.json

数据源服务器针对某些地区屏蔽,若需要在屏蔽地区内请求数据源,可以向我们申请访问权限

示例数据{

"CreationTime": "2025-08-06T12:00:00", //json数据源创建时间

"From_mcappx.com": {

"1.21.100.24": {

"Type": "Preview",

"ID": "1.21.10024",

"Date": "2025-07-16",

"Variations": [

{

"Arch": "x64",

"ArchivalStatus": 3,

"OSbuild": "19041",

"UpdateIds": [

"7952cc8f-44e9-4ef9-89ed-b9c709a84001"

],

"MD5": "397a90812645363ab11a40df01e63e43"

},

{

"Arch": "x86",

"ArchivalStatus": 3,

"OSbuild": "19041",

"UpdateIds": [

"136d488b-adcc-4cd0-a69f-1a2271fe3694"

],

"MD5": "513abf1e3b5c92c0df9c63adaeea2180"

}

]

}

}

}

版本对象字段说明:

字段名

类型

示例

描述

是否可能为空(为空时的值)

Type

string

"Release"

版本类型(有 Release/Beta/Preview)

ID

string

"1.21.10024"

安装包ID

("")

Date

string(日期)

"2025-07-16"

版本发布时间(ISO 格式)

("")

Variations

array of object

[...]

各系统架构变体信息列表

Variations 数组结构说明:

字段名

类型

示例值

描述

是否可能为空(为空时的值)

Arch

string

"x64"

架构类型(如 x64/x86/arm)

ArchivalStatus

integer

3

存档状态代码

OSbuild

string

"19041"

游戏适用的最低 Windows 版本构建号

("")

UpdateIds

array of string

["7952cc8f-..."]

关联的Update ID(GUID 格式)

([])

MD5

string

"397a9081..."

该版本对应文件的 MD5 校验值

("")

存档状态代码说明¶

存档状态代码

解释

是否可供下载

3

该版本已收录进版本库,且官方日志有记录

2

该版本已收录进版本库,但官方日志和 Minecraft Wiki 无记录,无法确定详细信息

1

该版本存在,但没有发布,或无法证明发布过

0

该版本发布过,但已经丢失

原始包msixvc的下载链接说明¶

可以替换下载链接的域名,Xbox CDN 支持使用以下域名,不同 CDN 域名下载的内容均相同,但不同地区的下载速度不同:

CDN 域名

服务器位置

中国大陆的下载速度对比

assets1.xboxlive.cn

全球各地

d1.xboxlive.cn

全球各地

assets2.xboxlive.cn

全球各地

d2.xboxlive.cn

全球各地

assets1.xboxlive.com

除中国大陆的其他地区

d1.xboxlive.com

除中国大陆的其他地区

assets2.xboxlive.com

除中国大陆的其他地区

d2.xboxlive.com

除中国大陆的其他地区

Update ID 的说明¶

Update ID 是 Microsoft Store 中各个程序包的标识符,一个包可能对应多个ID,利用此ID,可通过 fe3cr.delivery.mp.microsoft.com 官方 SOAP API 获取相应程序包下载链接。

注意

许多版本的的 Update ID 已经失效,无法通过 API 获取下载链接。例如:所有的 Beta 版、早期的 Preview 版、少数正式版等。

请求时需要使用一个规定格式的 xml 文件存取数据,该文件格式一般如下:

FE3FileUrl.xml

xmlns:a="http://www.w3.org/2005/08/addressing"

xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">

http://www.microsoft.com/SoftwareDistribution/Server/ClientWebService/GetExtendedUpdateInfo2

https://fe3cr.delivery.mp.microsoft.com/ClientWebService/client.asmx/secured

xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">

xmlns="http://schemas.microsoft.com/msus/2014/10/WindowsUpdateAuthorization"

u:id="ClientMSA">

xmlns="http://www.microsoft.com/SoftwareDistribution/Server/ClientWebService">

1

FileUrl

FileDecryption

FlightRing=RP;

以下是使用 Python 向 API 请求的示例函数(异步函数,在同步函数中调用可使用asyncio.run()):

Pythonfrom xml.dom import minidom

import aiohttp

async def getURL(update_id):

with open("FE3FileUrl.xml", "r") as f:

xml_template = f.read()

filled_xml = xml_template.format(update_id) # 将 Update ID 写入 xml 的 标签处

async with aiohttp.ClientSession() as session:

response = await session.post(

"https://fe3cr.delivery.mp.microsoft.com/ClientWebService/client.asmx/secured",

data=filled_xml,

headers={"Content-Type": "application/soap+xml; charset=utf-8"},

)

text = await response.text()

doc = minidom.parseString(text)

for node in doc.getElementsByTagName("FileLocation"):

url = node.getElementsByTagName("Url")[0].firstChild.nodeValue

if len(url) != 99: # 过滤掉 blockmap 文件

return url

植物大战僵尸:融合变种 - 免费小游戏在线玩
在宋朝,赐烛为何被视为骄傲的事情?身份地位的象征,一般人没有