resourcepack.ai
DOCS

Packs

Give an asset in game

What an asset's Give in game button does, for whoever is linked to receive a push (see POST /packs/{pack}/push): a model, block or item lands in their hands, a GUI or dialog opens, an icon or text effect is said in chat, a sound plays, an armour set is worn, a VFX is cast and a 3D shader object is placed in front of them. The command is built from the pack, never sent: you name the asset, by the kind and name the asset listing reports (shader/<id> and vfx/<id> for those two).

The pack itself has to be on their client for most of these to look right, so push it first. Free.

POST/packs/{pack}/assets/{kind}/{name}/give

Path parameters

packstringrequired

The pack's slug, as returned by the packs endpoints.

kindstringrequired

The asset's kind from the listing, or shader or vfx.

Options: texture, model, font, sound, shader, vfx

namestringrequired

The asset's name from the listing.

Body

versionstring

For a model or item: which Minecraft version's command syntax to use. The pack's own by default.

animationstring

For an animated model: which of its animations the placed copy plays.

scalenumber

For a model: how big the placed copy is, one of the Studio's size choices.

pagestring

For a dialog with pages: which page to open, by its page id. The first by default.

Response · 200

Done in game.

packstringrequired

The pack.

statusstringrequired

Always given.

playerstringrequired

Who it reached.

Error codes

Branch on error.code, never on the message.

invalid_request400

Something in the body or query is wrong. message says what.

invalid_api_key401

The key isn't one of ours, or it has been revoked.

missing_api_key401

No Authorization: Bearer header was sent.

wrong_key_kind401

An MCP key sent to the REST API, or an API key sent to the MCP server. Each only opens its own.

account_suspended403

The account is suspended, so its keys open nothing. message says until when, if the suspension has an end date.

forbidden403

Valid key, but not permitted to do this in this pack.

plan_required403

The key is valid, but its account's plan does not include the API.

not_found404

No such pack, asset or job.

not_linked409

Nobody is linked to receive a push: your code for this pack (GET /packs/{pack}/link) has not been claimed with /rp sync, and you are not on the test server with /permlink.

still_generating409

The asset exists but isn't finished. Poll its job until it's ready.

push_failed502

The pack was built but the server holding the player could not be reached, or refused it. message says which.