Compare

A laser engraving API: photo in, laser-ready file out

When orders arrive with a photo attached, somebody usually opens every image, prepares it by hand and exports it. The Vextrify API does that step on request and reports back when it is done.

Try Vextrify free
01

What the API does

The endpoint takes one image and returns it prepared for engraving: tone curve, material handling and dot structure applied, sized to the width you asked for. It is the same engine that runs in Vextrify's Photo Studio, so a file prepared through the API matches the one a person would have prepared by hand with the same recipe. The response also lists every setting that was applied, so any result can be traced and reproduced in the studio later.

  • Input: one image in the multipart field "image"
  • Optional: materialId, laserId, imageTypeId, goalId
  • Width 5–1,200 mm (default 100), DPI 50–2,000 (default 254)
  • Output: jobId, the PNG and the applied settings
02

A request in one line

Authentication is a bearer key that you create in your account and scope to the prepare permission, so a key handed to an agency or freelancer can do exactly one thing. A minimal call sends the image and a width; everything else has a sensible default. Errors come back with a machine-readable code — for example an unreadable image, a job that would exceed the size limit, or a rate limit with a Retry-After header — so an integration can react instead of guessing.

  • curl https://vextrify.com/v1/prepare -H "Authorization: Bearer <key>" -F image=@order.jpg -F widthMm=120
  • Keys are scoped (prepare:create) and can be limited per purpose
  • Clear error codes: image-unreadable, job-too-large, rate-limited
03

Webhooks for finished and failed jobs

Batch workflows rarely wait for a single response. Register an HTTPS endpoint and Vextrify sends job.completed with the job ID, pixel size and effective DPI, or job.failed when an image cannot be used — so a bad photo reaches you before your customer asks. Each delivery is signed with an HMAC-SHA256 signature in the vextrify-signature header, and failed deliveries are retried up to three times.

  • job.completed and job.failed
  • Signed: vextrify-signature (t=…, v1=…)
  • HTTPS endpoints on a public host only; up to 3 delivery attempts
04

Who it is for

Workshops that sell personalised products online and prepare dozens of customer photos a day, print-on-demand style order flows, and agencies building a configurator for a client. If you prepare a handful of photos a week, the Photo Studio is faster to start with; the API pays off when the same preparation happens again and again without anybody needing to look at it.

See the automation features

Common questions

Is there an API for laser engraving?

Yes. Vextrify exposes its photo preparation as POST /v1/prepare: send an image with an access key, get a laser-ready PNG and the applied settings back, and receive job.completed or job.failed webhooks.

Can I connect my online shop to laser engraving preparation?

Yes, through the API. Shops without their own code can connect it through Zapier, Make or n8n using their HTTP and webhook steps.

Does the API give the same result as preparing the photo by hand?

It uses the same engine and recipes as Vextrify's Photo Studio, and the response lists every applied setting so the result can be reproduced there.

How fast is it?

Measured at about 4.1 seconds for one photo at 100 mm width. Larger outputs take longer; very large jobs are rejected with a clear error instead of being silently shrunk.