Scan, fix, vectorize, and mock up DTF artwork straight from your own app, store, or fulfilment pipeline. Same processing engine as the DTFWiz web tools, over a plain REST API. Available on the Business plan.
All API requests require an API key passed in the x-api-key header. Keys are tied to your DTFWiz account, require an active Business plan, and count toward your daily limit. Treat a key like a password: it carries your billing, so keep it server-side and never ship it in browser or app code.
Base URL: https://dtfwiz.com/api/v1 · All endpoints accept multipart/form-data
No API access
Keys cannot be created
No API access
Use the web tools instead
Full API access
High daily ceiling, contact us to raise it
The API is Business-only. Entitlement is checked live on every request, not just when the key is created. If the Business plan lapses or the account is suspended, existing keys stop working immediately and return a 402. Reactivating the plan brings the same keys back with no need to reissue them.
Daily limits reset on a rolling 24-hour window. Need a higher ceiling? Contact us.
/api/v1/scanAnalyze a DTF artwork file and get a detailed JSON quality report. Detects DPI, background type, alpha fringe, speck noise, edge quality, and more.
imageFilerequiredPNG, JPEG, or WebP fileprint_width_inchesnumberoptionalTarget print width in inches (default: 12)curl -X POST https://dtfwiz.com/api/v1/scan \ -H "x-api-key: dtf_your_key_here" \ -F "image=@artwork.png" \ -F "print_width_inches=12"
/api/v1/fixApply one or more fixes to a DTF artwork file. Remove edge fringe, trim transparent borders, remove noise specks, and resize — all in one call. Returns a clean PNG.
imageFilerequiredPNG, JPEG, or WebP filefix_alpha_thresholdbooleanoptional"true" to cut semi-transparent edge fringealpha_thresholdnumberoptionalAlpha cutoff 0–255 (default: 144). Lower = more aggressive.fix_halftonebooleanoptional"true" to convert soft fades and glows into fully-opaque halftone dots instead of removing them. The opposite remedy to fix_alpha_threshold; use the scan's transparency_fix.recommended to pick. If both are sent, halftone wins and the alpha threshold is skipped. Dots are created after any resize, at final output resolution.halftone_lpinumberoptionalHalftone dot frequency in lines per inch, 15–65 (default: 35). Lower = bigger dots.print_width_inchesnumberoptionalTarget print width; sizes the halftone dots for the physical print (default assumes 300 DPI artwork)fix_trimbooleanoptional"true" to trim transparent border pixelsfix_despecklebooleanoptional"true" to remove isolated noise pixelsresize_width_pxnumberoptionalResize output to this pixel width (maintains aspect ratio)resize_height_pxnumberoptionalResize output to this pixel height (use both for exact dimensions)curl -X POST https://dtfwiz.com/api/v1/fix \ -H "x-api-key: dtf_your_key_here" \ -F "image=@artwork.png" \ -F "fix_alpha_threshold=true" \ -F "fix_trim=true" \ -F "fix_despeckle=true" \ -o fixed.png
/api/v1/remove-bgAI-powered background removal using PhotoRoom. Returns a clean PNG with transparent background. Works on complex artwork, logos, and photos. Typical response: 3–5 seconds.
imageFilerequiredPNG or JPEG file (max 25MP)curl -X POST https://dtfwiz.com/api/v1/remove-bg \ -H "x-api-key: dtf_your_key_here" \ -F "image=@photo.jpg" \ -o transparent.png
/api/v1/upscaleUpscale low-resolution artwork by 2× or 4× using Real-ESRGAN. Recovers fine detail lost in compression or small source files. Returns a URL to the upscaled image.
imageFilerequiredPNG or JPEG file. Inputs over the GPU budget are shrunk to it automatically (up to 4× the budget in pixels, 2× linear); larger files get a 413 { code: "image_too_large", maxPixels, pixels }scalenumberoptional2 or 4 (default: 4)curl -X POST https://dtfwiz.com/api/v1/upscale \ -H "x-api-key: dtf_your_key_here" \ -F "image=@low_res.png" \ -F "scale=4"
/api/v1/upscaleRead the effective input caps before uploading. maxPixels / maxPixels4x are the largest inputs accepted per scale including the auto-shrink allowance; budget / budget4x are the sizes the AI actually runs at (anything above is shrunk to it first). Admin-tunable, so read at runtime rather than hardcoding. autoShrink: true means your app no longer needs to pre-shrink.
curl https://dtfwiz.com/api/v1/upscale \ -H "x-api-key: dtf_your_key_here"
/api/v1/vectorizeConversions run one at a time on the server. Check the live queue before converting so your app can show a loader for a short wait or its own message for a long one.
curl https://dtfwiz.com/api/v1/vectorize \ -H "x-api-key: dtf_your_key_here"
/api/v1/vectorizeTraces artwork into a clean, infinitely scalable SVG tuned for DTF: exact color palettes, smooth edges, no speck noise. Auto color mode picks the right number of colors for the art. Typical response: 3–15 seconds plus any queue wait.
imageFilerequiredPNG, JPEG, or WebP file (max 25MB)colorsstringoptional"auto" (default — server picks 4–20), a number 1–20 (1 = single-color silhouette), or "unlimited"detailstringoptional"smoother", "balanced" (default), or "precise" (best for sharp text)shape_stylestringoptional"stacked" (default, overlapping layers — easy to edit) or "cutout" (flat pieces)speck_sizenumberoptionalRemove blobs under this many px across, 0–16 (default: 4)smooth_bandsbooleanoptional"false" to skip color-band smoothing (default: true)edge_cleanupbooleanoptional"false" to keep semi-transparent edge pixels (default: true)print_width_inchesnumberoptionalWrites the SVG at a physical size so RIP software imports it print-readycurl -X POST https://dtfwiz.com/api/v1/vectorize \ -H "x-api-key: dtf_your_key_here" \ -F "image=@artwork.png" \ -F "colors=auto" \ -o artwork.svg
/api/v1/mockup/templatesLists the available garment photos and their named placements (Center, Left Chest, Full Front, ...). Use the ids or names in POST /v1/mockup.
curl https://dtfwiz.com/api/v1/mockup/templates \ -H "x-api-key: dtf_your_key_here"
/api/v1/mockupRenders your design onto a real garment photo and returns the finished mockup PNG at full resolution. Pick the garment and placement by id or by name.
imageFilerequiredThe design. Transparent PNG recommended.template_idstringoptionalGarment id from GET /v1/mockup/templates. Omit to use the first garment.garmentstringoptionalOr match a garment by name, e.g. "black tee" (case-insensitive)placement_idstringoptionalPlacement id from the template listingplacementstringoptionalOr match a placement by name, e.g. "left chest" (case-insensitive)scalenumberoptionalDesign size inside the print area, 0.1 to 2 (default: 1)curl -X POST https://dtfwiz.com/api/v1/mockup \ -H "x-api-key: dtf_your_key_here" \ -F "image=@design.png" \ -F "garment=black tee" \ -F "placement=left chest" \ -o mockup.png
Create a free API key to start scanning and fixing DTF artwork in your own app. Free plan includes 100 requests per day.
Get your free API key