Printago API
POST /v1/customizer/textures/store

Upload store custom texture

Upload a custom build-plate texture SVG to the store's pool. The SVG's `viewBox` is parsed from the file. Re-uploading the same name is allowed — each upload creates a new row.

Requires: customizer.manage

Request Body

CustomizerStoreTextureUploadBody
fileBase64required
string
Base64-encoded payload (no data URI prefix).
filenamerequired
string
Original filename (must end in `.svg` or `.png`).
namerequired
string
Display name shown in the customer UI for this texture.

Example Request

application/json
{
  "name": "string",
  "filename": "string",
  "fileBase64": "string"
}

Response Schema

StoreCustomTextureWithUrl
createdAtrequired
string
format: date-time
customSvgUrlrequired
string
idrequired
string
pattern: ^[a-z0-9]{24}$
mimeTyperequired
string
MIME type of the uploaded file (`image/svg+xml` or `image/png`).
namerequired
string
opacityrequired
number
Tile rendering opacity in the customer UI (0..1).
storagePathrequired
string
storeIdrequired
string
pattern: ^[a-z0-9]{24}$
updatedAtrequired
string
format: date-time
viewBoxrequired
string
Raw `viewBox` string copied from the uploaded SVG. Null for PNGs.

Example Response

201 OK — application/json
{
  "customSvgUrl": "string",
  "name": "string",
  "storagePath": "string",
  "mimeType": "string",
  "opacity": 1,
  "id": "string",
  "storeId": "string",
  "createdAt": "2026-08-24T03:58:55.375Z",
  "updatedAt": "2026-08-24T03:58:55.375Z"
}