Generating
Generate a VFX
Produces a vfx: an effect played in the world out of glowing sprites (a spell burst, a shockwave, a sparkle trail), which RP Engine plays on a server. Takes a minute or two. Up to 600 characters.
One flat charge, refunded in full if it fails. A VFX has no file to download: it ships inside the pack's .zip. Change it with POST /packs/{pack}/assets/vfx/{id}/edit.
/packs/{pack}/vfxPath parameters
packstringrequiredThe pack's slug, as returned by the packs endpoints.
Body
promptstringrequiredmax 600 charactersWhat the effect should look like.
namestringYour label. Absent lets it be named from the prompt.
referenceIdsarray of stringmax 5 entriesReference images to design after, in order: referenceIds from POST /packs/{pack}/references.
useStyleGuidebooleandefault trueFollow the pack's style guide — its palette, its notes and its reference pictures. Defaults to true, so a pack with a style guide produces assets that match it without this field. Send false for one asset that should deliberately not match. A pack with no style guide, or one switched off, ignores this either way.
Response · 202
Accepted. The work runs asynchronously, so poll job until it leaves generating.
idstringrequiredIts id within the pack.
typestringrequiredWhat is generating.
Options: vfx
statusstringrequiredAlways generating: nothing is finished when this returns.
Options: generating, ready
packstringrequiredThe pack it was written into.
jobstringrequiredPoll this at GET /jobs/{job} until it leaves generating.
Error codes
Branch on error.code, never on the message.
invalid_request400Something in the body or query is wrong. message says what.
invalid_api_key401The key isn't one of ours, or it has been revoked.
missing_api_key401No Authorization: Bearer header was sent.
wrong_key_kind401An MCP key sent to the REST API, or an API key sent to the MCP server. Each only opens its own.
insufficient_credits402Not enough AI Credits to run this. Nothing was started or charged.
account_suspended403The account is suspended, so its keys open nothing. message says until when, if the suspension has an end date.
asset_limit_reached403The pack is at its asset limit.
forbidden403Valid key, but not permitted to do this in this pack.
plan_required403The key is valid, but its account is on Starter. The API needs a paid plan.
not_found404No such pack, asset or job.