Developers

RoVisuals for Developers

Generate Roblox thumbnails, icons, vector assets and logos from your own code. Available on every plan; requests use your RoVisuals account's credits.

Quickstart

  1. Create an API key in Settings.
  2. Generate an image:
curl https://www.rovisuals.dev/api/v1/generate/thumbnail \
-H "Authorization: Bearer $ROVISUALS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt": "A noob escaping a lava obby, title text OBBY RUSH"}'

The request returns when the image is ready, usually in under 30 seconds:

json
{
"id": "6f1c2a9e-5b7d-4e1a-9c3f-2d8e4b7a1c55",
"type": "thumbnail",
"status": "completed",
"image_url": "https://…/thumbnail/1791246603411-butlg.png",
"size": "1920x1080",
"credits_remaining": 38
}

API keys are linked to your RoVisuals account, which means they can spend your credits. Keep them secure. You can always revoke your API key in Settings if you suspect anything.

Generate images

POST/api/v1/generate/{thumbnail|icon|vector|logo}
TypeSizeAspect ratioBackgroundCredits
thumbnail1920×108016:9Opaque2
icon1024×10241:1Opaque2
vector1024×10241:1Transparent1
logo1024×10241:1Transparent2
FieldRequiredApplies toDescription
promptRequiredallWhat to make (2,000 characters max). Describe the content; Roblox styling is added automatically.
reference_imagesOptionalallPublic image URLs for reference images. Limits apply based on subscription tier (3: Free, Starter; 6: Pro; 8: Studio).
styleOptionalvector, logodefault, flat, realistic, fantasy, drawn, simulator, anime, adventure, rpg. Default default (no preset).
outlineOptionalvectorOutline around the asset (default false), color via outline_color (a hex code like #ff0000 or a color name, default black).
curl https://www.rovisuals.dev/api/v1/generate/icon \
-H "Authorization: Bearer $ROVISUALS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt": "My hero holding a sword", "reference_images": ["https://example.com/hero.png"]}'

Retries: send an Idempotency-Key header (any unique string, e.g. a UUID) to retry safely. If the connection drops, retrying with the same key returns the first image instead of generating and charging again.

Other endpoints

EndpointReturns
GET /api/v1/images/{id}One generation with its status: processing, completed or failed.
GET /api/v1/accountYour credits, plan and limits.

Rate limits

FreeStarterProStudio
Generations per minute351015
Generations at a time4444

Errors

Errors return { "error": { "code": "…", "message": "…" } }:

StatusCodeMeaning
200Success.
400invalid_request / reference_limitA field is missing or invalid, a reference image couldn't be used, or too many reference images.
401unauthorizedMissing, invalid or revoked API key.
402insufficient_creditsNot enough credits; includes required and available.
404not_foundNo such generation in your account.
409request_in_progressA request with the same Idempotency-Key is still running; retry shortly.
429rate_limitedA limit was hit; retry after Retry-After seconds.
502generation_failedThe image couldn't be generated. You weren't charged.

Resources

Ready to build?

Get an API key