地方发布API提供类似于在Studio中发布到Roblox的功能,增加了权限控制和持续发布工作流程的自动化。您可以使用此API将游戏的现有地方更新为新版本,这对于自动化您的发布工作流程非常有用。举例来说,您可以从GitHub操作中调用此API,并在成功的集成测试后自动将二进制地方文件推送到Roblox。
限制
- 此API仅支持HTTPS请求。
- 地方发布API不更新某些实例类型。如果您的游戏包含EditableImage、EditableMesh、PartOperation、SurfaceAppearance或BaseWrap实例,请在修改后从Studio发布。
Roblox上的地方
Roblox上的游戏可以有多个地方,其中一个起始地点作为用户进入您游戏的入口,还有其他可选地方,您可以在它们之间传送用户。您可以使用API发布起始地点或游戏的其他地方并进行版本控制。
在您可以更新游戏的现有地方之前,您需要该地方的地方ID和游戏的宇宙ID。地方ID用于标识该地方,宇宙ID用于标识该游戏。每个ID是唯一的,即使您的游戏只有一个地方。
发布一个地方
要使用地方发布API发布游戏的现有地方:
在创作者仪表板上创建一个API密钥。确保您执行以下设置:
- 将universe-places添加到访问权限中。
- 将写入操作添加到您选择的游戏中。
获取您想要发布地方的游戏的宇宙ID。
导航至创作者仪表板。
找到您想要更新的地方的游戏。
将鼠标悬停在游戏的缩略图上,点击**⋯按钮,然后选择复制宇宙ID**。

获取您想要更新的地方的地方ID。
- 保持在创作者仪表板的创作页面上,点击目标游戏的缩略图。
- 在左侧导航菜单上,点击地方标签。
- 找到您想要更新的地方,并点击其缩略图。
- 地方ID在重定向的URL中。例如,在URL https://create.roblox.com/dashboard/creations/experiences/0000000/places/111111/configure,中,**地方ID**是111111`。
在对API的POST请求的x-api-key头中添加API密钥。以下两个示例请求引用一个Roblox XML地方文件(.rbxlx)和一个二进制地方文件(.rbxl)。
XML地方文件请求$ curl --verbose --location POST 'https://apis.roblox.com/universes/v1/{universeId}/places/{placeId}/versions?versionType=Published' \--header 'x-api-key: <your-api-key>' \--header 'Content-Type: application/xml' \--data-binary @/home/placefiles/place1.rbxlx二进制地方文件请求$ curl --verbose --location POST 'https://apis.roblox.com/universes/v1/{universeId}/places/{placeId}/versions?versionType=Published' \--header 'x-api-key: <your-api-key>' \--header 'Content-Type: application/octet-stream' \--data-binary @/home/placefiles/place1.rbxl要运行这些命令,请将{universeId}和{placeId}替换为您想要发布的游戏和地方的实际宇宙ID和地方ID。
如果您正确发送请求,则会收到一个成功响应主体,包含以下格式的地方版本号:
示例响应主体{ "versionNumber": 7 }(可选)在Studio或创作者仪表板中验证上传。