Your first request and JSON response
Export a small BDEngine model, retrieve it with curl, inspect the JSON response, and save it before the temporary export ID expires.
Start with a small model, such as a single stone block. This makes the response easier to read before you work with animation frames and other optional data.
Prepare an export
- Open or create a small project in BDEngine.
- Select the target Minecraft version and a model-only export.
- Use Export to Minecraft Server and wait for publication to succeed.
- Copy the six-digit export ID. This is not the model’s catalog ID.
For the editor steps, see Export to Minecraft Server.
Request the data
Replace 123456 with the ID you just received:
curl "https://www.block-display.com/server-api?id=123456&tag=my_model"In Windows PowerShell, use curl.exe if curl resolves to a PowerShell alias. Keep the URL in quotes so that & remains part of the query string.
The optional tag parameter defaults to bde. Here it is my_model. See Requests, parameters, and export lifetime for the request parameters.
To include response headers, add -i:
curl -i "https://www.block-display.com/server-api?id=123456&tag=my_model"HTTP 200 indicates a successful response. HTTP 404 means the export cannot be found or its 10-minute lifetime has ended. For 429, wait for the interval specified in Retry-After. See Errors, versions, and compatibility.
Inspect the response
The following is an illustrative response, not a captured export:
{ "content": { "version": "1.21.4", "type": "modelOnly", "passengers": [ "{id:\"minecraft:block_display\",Tags:[\"my_model_0\"],block_state:{Name:\"minecraft:stone\"}}" ], "meta": { "schema": 1, "animations": {}, "sounds": {} } }}contentis the export object inside the HTTP response.versionis the Minecraft version selected for the export.type: "modelOnly"identifies a model export.passengerscontains SNBT strings, not JSON entity objects.metacontains metadata. Animation and sound maps can be empty.
Actual fields depend on the project and export mode. Continue with JSON structure for the complete structure.
Save the response
An export expires 10 minutes after publication. Downloading it does not extend its lifetime or remove it. You can request it again, including with another tag, while the ID is valid.
To save the response to a file:
curl --fail-with-body --output model.json "https://www.block-display.com/server-api?id=123456&tag=my_model"Check the HTTP status and the command’s result: an error response can also be written to the output file. A successfully saved response remains yours to use after the ID expires. Publish again if the project changes or you need a new ID.
See Requests, parameters, and export lifetime for the export lifecycle.
Next steps
The response gives you the export data. Your integration is responsible for using it in Minecraft.