The /Designer endpoint is used to manage the widget.
GET
/api/Designer/GetProduct
Returns information about a product by a specified product sku
Request Example
/api/Designer/GetProduct?variantId=123456789&originalSize=false&showBackgroundOnZoom=false&sku=null&productCode=null
originalSize,showBackgroundOnZoom, sku and productCode are optional
Response Example
{ "Id": 0, "Name": "string", "DesignerMode": "string", "SKU": 123456789, "Code": "string", "Instructions": "string", "ProductPvFile": "string", "ProductPreviewURL": "string", "ProductSizes": "string", "ProductCategoryId": 0, "DefaultTemplate": null, "OrderType": "string", "Templates": [], "Styles": [], "LocationGroups": [], "TemplatesCount": 0, "TemplateColourOverride": null, "ProductElements": [] }
GET
/api/Designer/GetProductTemplates
Returns information about all templates filtered by a specified product code
Request Example
/api/Designer/GetProductTemplates?code=Product1
Response Example
[ { "TemplatePreviewURL": "string", "TemplatePreviewURLJPG": "string" "Filename": "string", "Code": "string", "Name": "string", "OrderType": "string", "Id": 0, "PricingSKU": "string", "IsDefault": false, "Description": "string", "Categories": [] } ]
GET
/api/Designer/GetProductStyles
Returns information about all styles filtered by a specified product code
Request Example
/api/Designer/GetProductStyles?code=Product1
Response Example
[ { "Id": 0, "Name": "string", "Code": "string", "Description": "string", "TemplatePreviewURL": "string", "FontName": "string", "TextHeight": 0.0, "Recipe": "string", "FontName2": "string", "TextHeight2": 0.0, "Recipe2": "string", "WidthCompression": 100.0, "LineSpacing": 0.0, "TextType": "string", "MaxHeight": 0.0, "MaxWidth": 0.0, "Orientation": 0, "DefaultText": "string", "PricingSKU": "string", "IsDefault": false, "Colors": [] } ]
GET
/api/Designer/GetTemplateElements
Returns information about template elements by a specified template id
Request Example
/api/Designer/GetTemplateElements?templateId=1&GetTemplateElements=false&excludeDesigns=false
GetTemplateElements and excludeDesigns are optional
Response Example
[ { "ElementName": "string", "IsText": true, "ElementFont": "string", "IsMono": false, "IsMultiColor": false, "DefaultText": "string", "DefaultColorNames": [], "DefaultColoreelSwatches":[], "DesignColours": [], "HasStroke": false, "FileNotFound": false, "ExceptionMessage": "string", "MinLength": 0, "MaxLength": 0, "ForceCapitalization": false, "IsRequired": false, "IsPrimaryColour": false, "IsSecondaryColour": false, "DesignFile": "string", "Design": "string", "DefaultEmbFont": null, "HasColoreelSwatches": false, "DefaultColor": null, "RelativeLocation": { "TopBounds": 0.0, "LeftBounds": 0.0, "Width": 1.0, "Height": 1.0, "ViewsId": 0, "Name": "string", "CompanyId": 0, "Id": 0 }, "IsModified": false, "IsStatic": false, "AvailableColours": [], "AvailableColoreelLibraries":[], "AvailableFonts": [], "AvailableDesigns": [] } ]
GET
/api/Designer/RenderTemplateGet
Returns a url to the rendered template
Request Example
/api/Designer/RenderTemplateGet?ProductCode=Product1&LocationCode=Location1&TemplateCode=Template1&OrderType=embroidery-template&DPI=144&MaxDimension=600&RenderOnProduct=true&ReturnBase64=false &Personalizations[0].ElementName=Element1&Personalizations[0].IsText=true&Personalizations[0].Text=Text1&Personalizations[0].TextColour=Black&Personalizations[0].FontOverride=Arial&Personalizations[0].Design=Design1 &ImageType=png&RenderOnCropedLocationPadding=0&FitWidth=0&FitHeight=0&PreventZoomPreviewRotation=false&ShowBackgroundOnZoom=false Parameters ProductCode - string LocationCode - string (product location) TemplateCode - string OrderType - string Alignment - string (optional) DPI - 144 (optional) MaxDimension - 600 (optional, set to 600 by default) RenderOnProduct - true (optional, set to false by default) ReturnBase64 - false (optional, set to false by default) ViewInfo - string (view name, optional) PrimaryColour: string (optional) SecondaryColour: string (optional) ThreadPalette: string (optional) Personalizations[0].ElementName - string Personalizations[0].IsText - true (set it to true when rendering text or false when rendering design) Personalizations[0].Text - string Personalizations[0].TextColour - string (optional when rendering design) Personalizations[0].FontOverride - string (optional) Personalizations[0].Design - string (design name, optional when rendering text) ImageType - png / jpeg (optional) RenderOnCropedLocationPadding - 0 (optional) FitWidth - 0 (optional) FitHeight - 0 (optional) PreventZoomPreviewRotation - false (optional) ShowBackgroundOnZoom - false (optional) ATTENTION: Τhe URL length when calling this endpoint must not exceed the maximum values allowed by the server and the browsers.
Response Example
Response will be a url to the rendered template.
POST
/api/Designer/RenderTemplate
Returns a url to the rendered template
Model Request Example
All parameters except TemplateCode are optional { "TemplateCode": "string", "ProductCode": "string", "LocationCode": "string", "OrderType": "string", "RenderOnProduct": true, "Alignment": "string", "DPI": 144, "Personalizations": [ { "ElementName": "string", "IsText": true, "Text": "string", "TextColour": "string", "FontOverride": "", "HeightOverride": "", "Alignment": "", "Case": "(Std, Upper, SmallUpper, Lower, FirstUpper)", "VerticalSpacing": "", "ItalicAngle": "", "Design": "" } ], "ShowBackgroundOnZoom": false, "MaxDimension": 600, "ReturnBase64": false, "PrimaryColour": "string", "SecondaryColour": "string", "ThreadPalette": "string", "ViewInfo": "string", "ImageType": "png", "RenderOnCropedLocationPadding": 0, "FitWidth": 0, "ReturnBase64": false // set to false by default "FitHeight": 0, "PreventZoomPreviewRotation": false }
Response Example
Response will be a url to the rendered template.
GET
/api/Designer/RenderTemplatesGet
Returns a url to the rendered templates
Request Example
/api/Designer/RenderTemplatesGet?ProductCode=Product1&DPI=144&MaxDimension=600&ReturnBase64=false &Templates[0].ProductLocation=Location1&Templates[0].TemplateCode=Template1&Templates[0].OrderType=embroidery-template &Templates[0].Personalizations[0].ElementName=Element1&Templates[0].Personalizations[0].IsText=true&Templates[0].Personalizations[0].Text=Text1 &Templates[0].Personalizations[0].TextColour=Black&Templates[0].Personalizations[0].FontOverride=Arial&Personalizations[0].Design=Design1 Parameters ProductCode - string Alignment - string (optional) DPI - 144 (optional) MaxDimension - 600 (optional, set to 600 by default) ReturnBase64 - false (optional, set to false by default) ImageType - png / jpeg (optional) Color - string (optional) FitWidth - 0 (optional) FitHeight - 0 (optional) Templates[0].ProductLocation - string Templates[0].TemplateCode - string Templates[0].OrderType - string Templates[0].PrimaryColour - string (optional) Templates[0].SecondaryColour - string (optional) Templates[0].ThreadPalette - string (optional) Templates[0].Personalizations[0].ElementName - string Templates[0].Personalizations[0].IsText - true (set it to true when rendering text or false when rendering design) Templates[0].Personalizations[0].Text - string Templates[0].Personalizations[0].TextColour - string (optional when rendering design) Templates[0].Personalizations[0].FontOverride - string (optional) Templates[0].Personalizations[0].Design - string (design name, optional when rendering text) ATTENTION: Τhe URL length when calling this endpoint must not exceed the maximum values allowed by the server and the browsers.
Response Example
Response will be a url to the rendered templates on product.
POST
/api/Designer/RenderTemplates
Returns a url to the rendered templates
Model Request Example
{ "ProductCode": "string", "Alignment": "string", "DPI": 144, "MaxDimension": 600, "ReturnBase64": false, "ImageType" : (optional) "png / jpeg", "Color" : (optional) "string", "FitWidth" : (optional) 0, "FitHeight" : (optional) 0, "Templates": [ "TemplateCode": "string", "ProductLocation": "string", "OrderType": "string", "PrimaryColour": "string", "SecondaryColour": "string", "ThreadPalette": "string", "Personalizations": [ { "ElementName": "string", "IsText": true, "Text": "string", "TextColour": "string", "FontOverride": (optional), "HeightOverride": (optional), "Alignment": (optional) (Left, Right, Center), "Case": (optional) (Std, Upper, SmallUpper, Lower, FirstUpper), "VerticalSpacing": (optional), "ItalicAngle": (optional), "Design": (optional) } ] ] }
Response Example
Response will be a url to the rendered templates on product.
POST
/api/Designer/SubmitMultipleNotPaidOrder2
Returns a list of job names, a list of locations and the customer order number
Model Request Example
Submit unpaid jobs /api/Designer/SubmitMultipleNotPaidOrder2?returnProductionUrls=(optional false/true) Please click Common Order Parameters to view the Common Order Parameters. [ { "Job": "string", "ProductCode": "string", "TemplateCode": "string", "ProductLocationId": "string", "OrderType": "string" "Personalizations": [ { "IsText": true, "Text": "string", "TextColour": "string", "FontOverride" : "string" } ] ... } ]
Response Example
If the operation is successful the response will be a list of job names, a list of locations and the customer order number along with status code 201 { "jobs": [ "string" ], "locs": [ "string" ], "customerOrderNo": "string" }
POST
/api/Designer/ConfirmOrder
Returns a status code
Request Example
Converts an unpaid job to paid /api/Designer/ConfirmOrder?job=Order1&returnProductionUrls=(optional false/true)
Response Example
If the operation is successful the response will be status code 200
POST
/api/Designer/UpdateOrderInfo
Returns a status code
Request Example
/api/Designer/UpdateOrderInfo?job=Order1&quantity=1&customerOrderNumber=123456789&newJob=(optional to change the job name)
Response Example
If the operation is successful the response will be status code 200
POST
/api/Designer/UpdateShipping
Returns a status code
Request Example
/api/Designer/UpdateShipping?job=Order1&trackingNumber=(optional)&carrier=(optional)&status=(optional)
Response Example
If the operation is successful the response will be status code 200
POST
/api/Designer/CreateProducts
Returns a status code
Model Request Example
[ { "SKU": "string", "Code": "string", "Name": "string", "OrderType": "embroidery-template", "Locations": [ { "LocationName": "string", "URL": "string" } ], "ShopIds" : "(optional) string" } ]
Response Example
If the operation is successful the response will be status code 201
POST
/api/Designer/RenderProduct
Returns a url to the rendered product
Model Request Example
All parameters except ProductCode are optional { "ProductCode": "string", "LocationCode": "string", "RenderOnProduct": true, "Alignment": "string", "DPI": 144, "MaxDimension": 600, "ReturnBase64": false, "Color": "string", "ViewInfo": "string", "ImageType": "png / jpeg", "FitWidth": 0, "FitHeight": 0 }
Response Example
Response will be a url to the rendered product.
GET
/api/Designer/GetTemplates
Returns information about all templates filtered by a specified template code and/or order type
Request Example
/api/Designer/GetTemplates?templateCode=Template1&orderType=embroidery-template
Response Example
[ { "TemplatePreviewURL": "string", "TemplatePreviewURLJPG": "string" "Filename": "string", "Code": Template1, "Name": "string", "OrderType": embroidery-template, "Id": 0, "PricingSKU": "string", "IsDefault": false, "Description": "string", "Categories": [] } ]
GET
/api/Designer/GetProductWithTemplates
Returns information about a specified product code along with the templates for the order type
Request Example
/api/Designer/GetProductWithTemplates?code=Product1
Response Example
{ "Id": 0, "Name": "string", "DesignerMode": "string", "SKU": "string", "Code": Product1, "Instructions": "string", "ProductPvFile": "string", "ProductPreviewURL": "string", "ProductSizes": "string", "ProductCategoryId": 0, "DefaultTemplate": null, "OrderType": "string", "Templates": [], "Styles": [], "LocationGroups": [], "TemplatesCount": 0 }
POST
/api/Designer/ListProducts
Get List of products based on team, league and product types.
Model Request Example
{ "Products": [ "string" ], "Team": "string", "League": "string", "ProductTypes": [ "string" ], "FilterByFeatures" : false, "ProductCategoryId" : null }
Response Example
If the operation is successful the response will be following with status code 200 [ { "Id": 0, "Name": "string", "SKU": "string", "Code": "string", "ProductPvFile": "string", "ProductPreviewURL": "string" } ]
GET
/api/Designer/GetDesigns
Returns information about designs by a specified template id
Request Example
/api/Designer/GetDesigns?templateId=1
Response Example
[ { "DesignPreviewURL": "string", "DesignPreviewURLJPG": "string", "File": "string", "Name": "string", "Id": 1 } ]
POST
/api/Designer/ListAllDesigns
Returns designs list by order types and search parameters
Request Example
/api/Designer/listAllDesigns { "SearchText": "", // Optional, Search designs "Skip": -1, // Optional, Skip the first n designs "Length": 0, // Optional, Get n designs "CategoryId": 2, // Optional "OrderTypes": ["embroidery-template", "embroidery-free-form"], // Required, ["embroidery-template", "embroidery-free-form", "embroidery-design"] for embroidery types, ["print-template", "print-free-form", "print-design"] for print types "LocationName": "Location1", // Optional }
Response Example
{ "Designs": [ { "DesignPreviewURL": "url to get the design preview", "DesignPreviewURLJPG": "url to get the design preview in jpg format", "File": "file1.PXF", "Name": "design 1", "Id": 169, "DesignPricingSKU": null, "ImageType": null, "OrderType": "embroidery-free-form", "IsSingleDesign": false, // Design cannot be used in combination with other designs "IsLockColors": false // Design colors cannot be changed by the user }, { "DesignPreviewURL": "url to get the design preview", "DesignPreviewURLJPG": "url to get the design preview in jpg format", "File": "file2.PXF", "Name": "Design 2", "Id": 170, "DesignPricingSKU": null, "ImageType": null, "OrderType": "embroidery-free-form", "IsSingleDesign": false, // Design cannot be used in combination with other designs "IsLockColors": false // Design colors cannot be changed by the user } ], "Total": 2 }
GET
/api/Designer/GetDefaultProductForATemplate
Returns information about a product by a specified template code
Request Example
/api/Designer/GetDefaultProductForATemplate?templateCode=Template1
Response Example
{ "Id": 0, "Name": "string", "DesignerMode": "string", "SKU": "string", "Code": "string", "Instructions": "string", "ProductPvFile": "string", "ProductPreviewURL": "string", "ProductSizes": "string", "ProductCategoryId": 0, "DefaultTemplate": null, "OrderType": "string", "Templates": [], "Styles": [], "LocationGroups": [], "TemplatesCount": 0 }
POST
/api/Designer/SubmitNotPaidOrder
Returns a job name
Model Request Example
/api/Designer/SubmitNotPaidOrder Please click Common Order Parameters to view the Common Order Parameters. { "ClientID": "string", "Job": "string", "ViewInfo": "string", "ProductCode": "Product1", "Quantity": 1, "CustomerName": "string", "CustomerTelNumber": "string", "CustomerOrderNumber": "string", "BundleId": 0, "Source": "api", "ProductLocationId": "string", "Style": "string", "TemplateCode": "string", "LocInfo": "string", "OrderType": "string", "PrimaryColour": "string", "SecondaryColour": "string", "Justification": "string", "Personalizations": [ { "ElementName": "string", "IsText": true, "Text": "string", "TextColour": "string", "FontOverride": "", "HeightOverride": "", "Alignment": "", "Case": "(optional) (Std, Upper, SmallUpper, Lower, FirstUpper)", "VerticalSpacing": "", "ItalicAngle": "", "Design": "" } ] }
Response Example
If the operation is successful the response will be with job name and with status code 201
GET
/api/Designer/GetThumbnail
Returns the thumbnail for a job
Request Example
/api/Designer/GetThumbnail?job=myjob&isTemplate=false Parameters job - The existing job isTemplate - Set to true if the template file needs to be rendered. Optional
Response Example
returns an image
GET
/api/Designer/RenderPngCachedBySession
Returns the thumbnail of rendered templates based on orders filtered by a specified session
Request Example
/api/Designer/RenderPngCachedBySession?session=A1B1C1D1
Response Example
Response will be an image.
POST
/api/Designer/GetClientCacheVersion
Returns the current version of the client cache
Request Example
/api/Designer/GetClientCacheVersion
Response Example
Returns the client cache version as a number.
POST
/api/Designer/SetShopifySettings
Saves the Shopify settings.
Request Example
/api/Designer/SetShopifySettings?settings=settingsString&sessionId=sessionId
Response Example
If the session already exists, it will update the session and the response will be empty with status code 200 If the session does not exist, it will create an entry and the response will be empty with status code 201 If an error occurs the response will be the error message with status code 409
GET
/api/Designer/GetDesignsByType
Returns the design of a specific type(Clipping or Distress)
Request Example
/api/Designer/GetDesignsByType?type=Distress Parameters "type": "Distress" // Required, Possible values: "Distress", "Clipping"
Response Example
The list of the designs [ { "DesignPreviewURL": "the png design preview url", "DesignPreviewURLJPG": "the jpg design preview url", "File": "Distress 1.pv", "Name": "Distress 1", "Id": 123 }, { "DesignPreviewURL": "the png design preview url", "DesignPreviewURLJPG": "the jpg design preview url", "File": "Distress 2.pv", "Name": "Distress 2", "Id": 124 } ]
POST
/api/Designer/SubmitMultipleNotPaidFreeFormOrder
Submit a free form order. Returns a list of job names, a list of locations and the customer order number
Model Request Example
Please click Common Order Parameters to view the Common Order Parameters. Submit model { // For embroidery type order "embOrder": { "ProductId": "Product1", // The Product code "ProductViews": [ { "DPI": 72, "FObjectsInfo": [ Any combination of FObject Info (Text, Design or Auto-Digitized Bitmap), as explained below, submitted as JSON object ], "Location": { // Dimensions and position of the Location in the client "height": 201.51, // Unit: pixels "width": 488.92, // Unit: pixels "x": 519.38, // Unit: pixels "y": 154.57 // Unit: pixels }, "ProductLocationId": "Front", // The Product Location name "ProductViewId": "Long Sleeve T-Shirt", // The Product View name "Quantity": 1 } ] }, // For print/engraving type orders "orders": [ { "Color": "", "OrderJsonInfo": [ { "JsonDetails": "", // Any Json Details object (Text, Design or Bitmap), as explained below, submitted as JSON string "ProductViewId": "Long Sleeve T-Shirt" // The Product View name } ], "OrderType": "print-free-form", "ProductCode": "Product1", // The Product code "ProductLocationId": "Front", // The Product Location name "Quantity": 1, "Size": "" } ] } FObjectInfo Text { "Angle": 0, "ArcFactor": 0, // The value of text property Arc "AssetType": "Design", // Possible values: "Design" for Text, Design or Digitize, "Template" for Templates "EnvelopeType": "Rectangle", // Possible values: "Rectangle", "BridgeConcaveTop", "BridgeConcaveBottom", "BridgeConvexTop", "DoubleConvexBridges", "ConcaveTopConvexBottom", "ConvexTopConcaveBottom" "FlipX": false, "FlipY": false, "Font": "Block", "FontHeight": 100, // The Font height in mm / 10 "FromTemplate": false, "Left": -0.5399999999999636, // Along with Top it provides the position of the element in the client "ObjectType": "TEXT", // Possible values: "TEXT", "DESIGN", "GRAPHIC" "Palette": [ // The embroidery palette colors { "Alpha": 255, "Blue": 0, "Code": "1000", "Green": 0, "Manufacturer": "Madeira", "Name": "1000 - Black", "Red": 0, "RelColor": 0 // Used for drawing stitches, The index of the needle (color) in the palette }, ... { "Alpha": 255, "Blue": 255, "Code": "1001", "Green": 255, "Manufacturer": "Madeira", "Name": "1001 - White", "Red": 255, "RelColor": 0 // Used for drawing stitches, The index of the needle (color) in the palette } ], "Recipe": null, "ScaleX": 1.8641568414257068, "ScaleY": 1.8641568414257068, "Text": "Tajima", "Top": -0.16399999999998727 // Along with Left it provides the position of the element in the client } FObjectInfo Design { "Angle": 0, "AssetType": "Design", // Possible values: "Design" for Text, Design or Digitize, "Template" for Templates "FileName": "Emoji22", // The Design name "FlipX": false, "FlipY": false, "FromTemplate": true, "Height": 62.5, // The Design height in pixels "Left": -0.5399999999999636, // Along with Top it provides the position of the element in the client "Name": "Emoji22", // The Element name inside the embroidery file. If there are no Elements, its value is the same as "Filename". Get its value from the response of the /api/Designs/GetStitches endpoint "ObjectType": "DESIGN", // Possible values: "TEXT", "DESIGN", "GRAPHIC" "Palette": [ // The embroidery palette colors { "Alpha": 255, "Blue": 0, "Code": "1000", "Green": 0, "Manufacturer": "Madeira", "Name": "1000 - Black", "Red": 0, "RelColor": 0 // Used for drawing stitches, The index of the needle (color) in the palette }, ... { "Alpha": 255, "Blue": 255, "Code": "1001", "Green": 255, "Manufacturer": "Madeira", "Name": "1001 - White", "Red": 255, "RelColor": 0 // Used for drawing stitches, The index of the needle (color) in the palette } ], "Recipe": null, "ScaleX": 1.8641568414257068, "ScaleY": 1.8641568414257068, "Top": -0.16399999999998727 // Along with Left it provides the position of the element in the client "Width": 440.5 // The Design width in pixels } FObjectInfo Auto-Digitized Bitmap { "Angle": 0, "AssetType": "Design", // Possible values: "Design" for Text, Design or Digitize, "Template" for Templates "DgModel": { "Colors": [ // Mapping between the image colors and the available embroidery palette colors. Get its value from the response of the /api/AutoDigitize/Digitize or /api/AutoDigitize/ReDigitize endpoint { "DesignColor": { // The image color "Alpha": 255, "Blue": 254, "Code": null, "Green": 254, "Manufacturer": null, "Name": null, "Red": 254, "RelColor": 0 // Used for drawing stitches, The index of the needle (color) in the palette }, "NumPixels": 4385, "NumPixelsPercentage": 2.7633884120442144, "PaletteColor": { // The embroidery palette color "Alpha": 255, "Blue": 255, "Code": "1001", "Green": 255, "Manufacturer": "Madeira", "Name": "1001 - White", "Red": 255, "RelColor": 0 // Used for drawing stitches, The index of the needle (color) in the palette } }, ... { "DesignColor": { // The image color "Alpha": 0, "Blue": 0, "Code": "tr", "Green": 0, "Manufacturer": null, "Name": "transparent", "Red": 0, "RelColor": 0 // Used for drawing stitches, The index of the needle (color) in the palette }, "NumPixels": 94890, "NumPixelsPercentage": 59.798842968956787, "PaletteColor": { // The embroidery palette color "Alpha": 0, "Blue": 0, "Code": "[transparent]", "Green": 0, "Manufacturer": "Madeira", "Name": "transparent", "Red": 0, "RelColor": 0 // Used for drawing stitches, The index of the needle (color) in the palette } } ], "Filename": "ybmFG_4k0UeqCwmiSJvXOA_status0", // Get its value from the response of the /api/AutoDigitize/Digitize or /api/AutoDigitize/ReDigitize endpoint "Instructions": "Instructions submitted from the client", "IsRaised": false // Use "raised" recipe } "FlipX": false, "FlipY": false, "FromTemplate": false, "Height": 62.5, // The image height in pixels "Left": -0.5399999999999636, // Along with Top it provides the position of the element in the client "ObjectType": "GRAPHIC", // Possible values: "TEXT", "DESIGN", "GRAPHIC" "Recipe": null, "ScaleX": 1.8641568414257068, "ScaleY": 1.8641568414257068, "Top": -0.16399999999998727 // Along with Left it provides the position of the element in the client "Width": 440.5 // The image width in pixels } JsonDetails Text { "DPI": 72, "DesignerMode": "Advanced", // Possible values: "Basic", "Advanced" "Elements": [ { "Identity": { "AssetType": 0, // 0 = None, 1 = Design, 2 = Template "ElementName": "" }, "PaintingWays": [ // Color information { "Color": { "Name": "", "Type": 0, // 0 = Rgb, 1 = Cmyk, 2 = SpotRgb, 3 = SpotCmyk, 4 = Gray, 5 = SpotGray "Values": [0.9607843, 0.9607843, 0.9607843] }, "FillMode": 1, // 0 = Alternate, 1 = Winding "FillType": 0, // 0 = Solid, 1 = Gradient, 2 = Pattern "PaintingWayType": 0 // 0 = Fill, 1 = Stroke }, ... { "Color": { "Name": "", "Type": 0, // 0 = Rgb, 1 = Cmyk, 2 = SpotRgb, 3 = SpotCmyk, 4 = Gray, 5 = SpotGray "Values": [0.156862751, 0.160784319, 0.164705887] }, "PaintingWayType": 1, // 0 = Fill, 1 = Stroke "StrokeType": 0, // 0 = Solid, 1 = Pattern "Width": 5 // Unit: pixels, Range: min = 0, max = 5 } ], "Properties": { "Envelope": { "Bend": 0.5, // Range: min = -1, max = 1 "Type": "Arc" // 0 = Arc, 1 = Arch, 2 = BridgeBottom, 3 = DoubleBridge, 4 = ArcUpper }, "FontFamily": "Arial", "FontHeight": 45, // Unit: pixels "FontStyle": "Normal", "IsSvgFont": false, "Opacity": 1, "Text": "Pulse" }, "Transformation": { "CenterX": 647.4494327154205, // Unit: pixels "CenterY": 711.2562426979738, // Unit: pixels "Rotation": -89.98122940761049, // Unit: degrees "ScaleX": 3.671902206927248, "ScaleY": 3.6719022069272486 }, "Type": 2 // 0 = Group, 1 = Shape, 2 = Text, 3 = Bitmap } ], "LocationBounds": { "Left": 316.79999999999998, // Unit: pixels "Top": 388.79999999999998, // Unit: pixels "Width": 648, // Unit: pixels "Height": 648 // Unit: pixels } } JsonDetails Design { "DPI": 72, "DesignerMode": "Advanced", // Possible values: "Basic", "Advanced" "Elements": [ { "Elements": [ { "Identity": { "AssetFguid": "Lion", // The Design name "AssetType": 1, // 0 = None, 1 = Design, 2 = Template "ElementName": "Path" }, "PaintingWays": [ // Color information { "Color": { "Name": "", "RelColor": 0, // The index of the color "Type": 1, // 0 = Rgb, 1 = Cmyk, 2 = SpotRgb, 3 = SpotCmyk, 4 = Gray, 5 = SpotGray "Values": [0, 0.6, 1, 0] }, "FillMode": 1, // 0 = Alternate, 1 = Winding "FillType": 0, // 0 = Solid, 1 = Gradient, 2 = Pattern "PaintingWayType": 0 // 0 = Fill, 1 = Stroke } ], "Properties": { "Opacity": 1 }, "Transformation": { "CenterX": 141.44140625, // Unit: pixels "CenterY": 147.60546875, // Unit: pixels "Rotation": 0, // Unit: degrees "ScaleX": 1, "ScaleY": 1 }, "Type": 1 // 0 = Group, 1 = Shape, 2 = Text, 3 = Bitmap }, ... { "Identity": { "AssetFguid": "Lion", // The Design name "AssetType": 1, // 0 = None, 1 = Design, 2 = Template "ElementName": "Path" }, "PaintingWays": [ // Color information { "Color": { "Name": "", "RelColor": 1, // The index of the color "Type": 1, // 0 = Rgb, 1 = Cmyk, 2 = SpotRgb, 3 = SpotCmyk, 4 = Gray, 5 = SpotGray "Values": [0, 0.25, 0.45, 0] }, "FillMode": 1, // 0 = Alternate, 1 = Winding "FillType": 0, // 0 = Solid, 1 = Gradient, 2 = Pattern "PaintingWayType": 0 // 0 = Fill, 1 = Stroke } ], "Properties": { "Opacity": 1 }, "Transformation": { "CenterX": 141.43359375, // Unit: pixels "CenterY": 157.263671875, // Unit: pixels "Rotation": 0, // Unit: degrees "ScaleX": 1, "ScaleY": 1 }, "Type": 1 // 0 = Group, 1 = Shape, 2 = Text, 3 = Bitmap } ], "Identity": { "AssetFguid": "Lion", // The Design name "AssetType": 1, // 0 = None, 1 = Design, 2 = Template "ElementName": "Group" }, "Transformation": { "CenterX": 640.8, // Unit: pixels "CenterY": 712.8, // Unit: pixels "Rotation": 0, // Unit: degrees "ScaleX": 2.0837122118040054, "ScaleY": 2.0837122118040054 }, "Type": 0 // 0 = Group, 1 = Shape, 2 = Text, 3 = Bitmap } ], "LocationBounds": { "Left": 316.79999999999998, // Unit: pixels "Top": 388.79999999999998, // Unit: pixels "Width": 648, // Unit: pixels "Height": 648 // Unit: pixels } } JsonDetails Bitmap { "DPI": 72, "DesignerMode": "Advanced", // Possible values: "Basic", "Advanced" "Elements": [ { "Identity": { "AssetFguid": "Bitmap", // The Design name "AssetType": 1, // 0 = None, 1 = Design, 2 = Template "ElementName": "" }, "Properties": { "ActualImageWidth": 249, // Unit: pixels "ActualImageHeight": 152, // Unit: pixels "Opacity": 1 }, "Transformation": { "CenterX": 640.8, // Unit: pixels "CenterY": 712.8, // Unit: pixels "Rotation": 0, // Unit: degrees "ScaleX": 2.202335350471956, "ScaleY": 2.202335350471956 }, "Type": 3 // 0 = Group, 1 = Shape, 2 = Text, 3 = Bitmap } ], "LocationBounds": { "Left": 316.79999999999998, // Unit: pixels "Top": 388.79999999999998, // Unit: pixels "Width": 648, // Unit: pixels "Height": 648 // Unit: pixels } }
Response Example
If the operation is successful the response will be a list of job names, a list of locations and the customer order number along with status code 201 { "jobs": ["4X49N8KWWSS", "FEIDKIDFQWM"], "locs": ["Front", "Back"], "customerOrderNo": "0OIL8JNHYEC" }
POST
/api/Designer/ListProductTemplates
Get List of templates based on product code, ProductLocationId.
Model Request Example
{ "Code": "string", "ProductLocationId": 0, "SearchText": "a design name", //string, optional "Skip": 10, // integer, optional, (skip the first n designs) "Length": 20, //integer, optional, (get x designs) "CategoryId": 2, //integer, optional, (get designs by category id) "OrderTypes": ["embroidery-template", "embroidery-free-form"] //string array, required }
Response Example
If the operation is successful the response will be following with status code 200 { "$id": "1", "Templates": [ { "$id": "2", "TemplatePreviewURL": "http://localhost:58365/api/templates/RenderPngCached/Breakfast2?companyId=0", "TemplatePreviewURLJPG": "http://localhost:58365/api/templates/RenderJpgCached/Breakfast2?companyId=0", "Filename": "Breakfast-Orig.pv", "Code": "Breakfast2", "Name": "Breakfast2", "OrderType": "print-template", "Id": 584, "PricingSKU": null, "IsDefault": false, "Description": null, "Categories": [] }, { "$id": "3", "TemplatePreviewURL": "http://localhost:58365/api/templates/RenderPngCached/Breakfast?companyId=0", "TemplatePreviewURLJPG": "http://localhost:58365/api/templates/RenderJpgCached/Breakfast?companyId=0", "Filename": "Breakfast_01.pv", "Code": "Breakfast", "Name": "Breakfast", "OrderType": "print-template", "Id": 564, "PricingSKU": null, "IsDefault": false, "Description": null, "Categories": [] }, { "$id": "4", "TemplatePreviewURL": "http://localhost:58365/api/templates/RenderPngCached/Cookie3?companyId=0", "TemplatePreviewURLJPG": "http://localhost:58365/api/templates/RenderJpgCached/Cookie3?companyId=0", "Filename": "Cookie3-23March2022-2.pv", "Code": "Cookie3", "Name": "Cookie3", "OrderType": "print-template", "Id": 507, "PricingSKU": null, "IsDefault": false, "Description": null, "Categories": [] } ], "Total": 3 }
GET
/api/Designer/GetProductDetails
Returns detail information of product
Request Example
/api/Designer/GetProductDetails?code=productCode
Response Example
[ { "$id": "1", "Id": 2581, "ProductId": 71, "Name": "40190389387443_PR White 1_Image.png", "IsRequired": false, "ImageName": "40190389387443_PR White 1_Image.png", "ImageWidth": 0, "ImageHeight": 0, "ViewPreviewUrl": "http://localhost:58365/CachedProducts/2/Cached/PR%20White%201-40190389387443_PR%20White%201_Image.png", "ViewPreviewWithLocation": null, "ViewPreviewWithPersonalizedLocation": null, "Locations": [ { "$id": "2", "Id": 2584, "X": 8.132, "Y": 11.333, "Width": 14.0, "Height": 16.5, "LocationName": "PR White 1", "Alignment": null, "ScalingMethod": "Proportional", "ScalingRules": "Always Scales", "ImageName": "40190389387443_PR White 1_Image.png", "DefaultTemplateId": null, "DPI": 0.0, "DpiX": 13.0, "DpiY": 13.0, "MaxStitchCount": null, "PricingSKU": null, "Templates": [ { "$id": "3", "TemplatePreviewURL": "http://localhost:58365/CachedTemplates/2/Breakfast_01.png", "TemplatePreviewURLJPG": null, "Filename": "Breakfast_01.pv", "Code": "Breakfast", "Name": "Breakfast", "OrderType": "print-template", "Id": 564, "PricingSKU": null, "IsDefault": false, "Description": null, "Categories": [] }, { "$id": "4", "TemplatePreviewURL": "http://localhost:58365/CachedTemplates/2/Cookie3-23March2022-2.png", "TemplatePreviewURLJPG": null, "Filename": "Cookie3-23March2022-2.pv", "Code": "Cookie3", "Name": "Cookie3", "OrderType": "print-template", "Id": 507, "PricingSKU": null, "IsDefault": false, "Description": null, "Categories": [] } ], "TemplatesCount": 0 } ], "Techniques": [ { "$id": "5", "Name": "Print", "Value": "print-template" } ], "IsDefault": false } ]
POST
/api/Designer/GetProductVariantsBySKU
Returns the product variants by SKU
Request Example
/api/Designer/GetProductVariantsBySKU { "VariantSkus" : ["42831467970801","42799710241009"], "UsedLocations" : ["1", "2"] }
Response Example
{ "data": [], "error": "" }
POST
/api/Designer/ListDesigns
Returns list of designs
Request Example
/api/Designer/ListDesigns All Parameters is optional { "TemplateName" : "string", "CategoryName" : "string", "SearchText" : "", "Length" : 10, "Skip" : 2 }
Response Example
{ "Designs": [ { "$id": "2", "DesignPreviewURL": "http://localhost:58365/api/designs/RenderPngCached/4%20Point%20Star?companyId=0&actualName=4%20Point%20Star", "DesignPreviewURLJPG": "http://localhost:58365/api/designs/RenderJpgCached/4%20Point%20Star?companyId=0&actualName=4%20Point%20Star", "File": "4 Point Star.PXF", "Name": "4 Point Star", "Id": 1268, "DesignPricingSKU": "99999", "ImageType": null, "OrderType": null, "IsSingleDesign": false, "IsLockColors": false } ] }
POST
/api/Designer/ListCustomerDesigns
Returns list of designs by customer
Request Example
/api/Designer/ListCustomerDesigns { "Customer" : "string", "SearchText": "a design name", //string, optional "Skip": 0, // integer, optional, (skip the first n designs) "Length": 20, //integer, optional, (get x designs) "CategoryId": 0, //integer, optional, (get designs by category id) "OrderTypes": ["embroidery-template", "embroidery-free-form"] //string array, required }
Response Example
{ "Designs": [ { "$id": "2", "DesignPreviewURL": "http://localhost:58365/api/designs/RenderPngCached/4%20Point%20Star?companyId=0&actualName=4%20Point%20Star", "DesignPreviewURLJPG": "http://localhost:58365/api/designs/RenderJpgCached/4%20Point%20Star?companyId=0&actualName=4%20Point%20Star", "File": "4 Point Star.PXF", "Name": "4 Point Star", "Id": 1268, "DesignPricingSKU": "99999", "ImageType": null, "OrderType": null, "IsSingleDesign": false, "IsLockColors": false } ] }
POST
/api/Designer/DeleteCustomerDesign
delete design by customer and design id
Request Example
/api/Designer/DeleteCustomerDesign { "Customer" : "string", "id" : 0 }
Response Example
If the operation is successful the response will be status code 200
GET
/api/Designer/GetProductCategories
Returns category list by product category type id
Request Example
/api/Designer/GetProductCategories?typeId=1
Response Example
[ { "Name": "Cars", "Id": 1, "ImageUrl": "", "ProductTypeId": 0, "ProductType": null } ]
GET
/api/Designer/GetProductCategoriesByFeature
Returns category list By Feature
Request Example
/api/Designer/GetProductCategoriesByFeature
Response Example
[ { "Name": "Cars", "Id": 1, "ImageUrl": "", "ProductTypeId": 0, "ProductType": null } ]
POST
/api/Designer/ListFilteredProductCategories
Returns list of product categories
Request Example
/api/Designer/ListFilteredProductCategories { "CategoryType" : 1, "SearchText": "a design name", //string, optional "Skip": 0, // integer, optional, (skip the first n designs) "Length": 20 //integer, optional, (get x designs) }
Response Example
{ "$id": "1", "Categories": [ { "$id": "2", "Name": "Cars", "Id": 1, "ImageUrl": "http://localhost:58365/api/productCategory/RenderPngCached/1?companyId=0", "ProductTypeId": 0, "ProductType": null } ], "Total": 1 }
GET
/api/Designer/GetProductCategoryTypes
Returns category type list
Request Example
/api/Designer/GetProductCategoryTypes
Response Example
[ { "$id": "1", "ImageUrl": "http://localhost:58365/ProductCategoryType/2/208d8ebf6f00f0b446fcdb53ad234976.png", "Name": "Towels", "CompanyId": 0, "Id": 6 } ]
GET
/api/Designer/GetAvailableEngravingFonts
Returns Engraving Fonts list
Request Example
/api/Designer/GetAvailableEngravingFonts?templateId=867
Response Example
[ { "$id": "1", "label": "", "value": "" }, { "$id": "2", "label": "571", "value": "571" }, { "$id": "3", "label": "Arial", "value": "Arial" } ]
GET
/api/Designer/SaveTempFileForPreview
Save temp preview file
Request Example
/api/Designer/SaveTempFileForPreview?previewFileName=previewFile
Response Example
If the operation is successful the response will be status code 200
POST
/api/Designer/SubmitOrderSKUs
Submit multiple not paid ordres
Request Example
/api/Designer/SubmitOrderSKUs { "CustomerOrderNumber": "string", "Items": [ { "Code": "Product1", "Quantity": 1, "Job": "string", "Color": "string", "Font": "string", "Text": "string", "FontColour" : "string" // optional }, { "Code": "Product2", "Quantity": 1, "Job": "string", "Color": "string", "Font": "string", "Text": "string" } ] }
Response Example
If the operation is successful the response will be status code 201
POST
/api/Designer/DeleteOrders
Delete orders
Request Example
/api/Designer/DeleteOrders [ "DS321650870", "DS321650871" ]
Response Example
If the operation is successful the response will be status code 200
POST
/api/Designer/SubmitNotPaidOrder2
Returns a job name
Model Request Example
/api/Designer/SubmitNotPaidOrder2 Please click Common Order Parameters to view the Common Order Parameters. { "ClientID": "string", "Job": "string", "ViewInfo": "string", "ProductCode": "Product1", "Quantity": 1, "CustomerName": "string", "CustomerTelNumber": "string", "CustomerOrderNumber": "string", "BundleId": 0, "Source": "api", "ProductLocationId": "string", "Style": "string", "TemplateCode": "string", "LocInfo": "string", "OrderType": "string", "PrimaryColour": "string", "SecondaryColour": "string", "Justification": "string", "Personalizations": [ { "ElementName": "string", "IsText": true, "Text": "string", "TextColour": "string", "FontOverride": "", "HeightOverride": "", "Alignment": "", "Case": "(optional) (Std, Upper, SmallUpper, Lower, FirstUpper)", "VerticalSpacing": "", "ItalicAngle": "", "Design": "" } ] }
Response Example
If the operation is successful the response will be with job name and with status code 201
POST
/api/Designer/UpdateMultipleOrder
update multiple orders
Model Request Example
/api/Designer/UpdateMultipleOrder Please click Common Order Parameters to view the Common Order Parameters. [ { "ClientID": "string", "Job": "string", "ViewInfo": "string", "ProductCode": "Product1", "Quantity": 1, "CustomerName": "string", "CustomerTelNumber": "string", "CustomerOrderNumber": "string", "BundleId": 0, "Source": "api", "ProductLocationId": "string", "Style": "string", "TemplateCode": "string", "LocInfo": "string", "OrderType": "string", "PrimaryColour": "string", "SecondaryColour": "string", "Justification": "string", "Personalizations": [ { "ElementName": "string", "IsText": true, "Text": "string", "TextColour": "string", "FontOverride": "", "HeightOverride": "", "Alignment": "", "Case": "(optional) (Std, Upper, SmallUpper, Lower, FirstUpper)", "VerticalSpacing": "", "ItalicAngle": "", "Design": "" } ] } ]
Response Example
If the operation is successful the response will be with job name and with status code 201
POST
/api/Designer/DeleteTempFiles
Returns a job name
/api/Designer/DeleteTempFiles [ "temp-file.png" ]
Response Example
If the operation is successful the response will be with job name and with status code 200
GET
/api/Designer/TryCreateOnDemandProductOrder
Create OnDemandProducts data
Request Example
/api/Designer/TryCreateOnDemandProductOrder?sku=on-demand-8080&customerOrderId=TQNNKPZ6CIU&quantity=1
Response Example
If the operation is successful the response will be status code 200
GET
/api/Designer/GetSettings
Return settings
Request Example
/api/Designer/GetSettings
Response Example
{ "$id": "1", "ShowProductList": false, "ShowProductScan": true, "ShowProductCategories": false, "BackgroundUrl": "", "BannerUrl": "", "MainLogoUrl": "", "BannerLogoUrl": "", "InfoLogoUrl": "", "BackButtonUrl": "", "NextButtonUrl": "", "ArrowNextUrl": "", "ArrowPreviousUrl": "", "ZoomInUrl": "", "ZoomOutUrl": "", "Color": "black", "MainLogoTopDistance": "0px", "MainLogoWidth": "100%", "MainLogoHeight": "100%", "BannerLogoSize": "100%", "SelectionWindowWidth": "1400" }
POST
/api/Designer/UploadAndValidateImage
Upload and validate design image
Request Example
Request Content will be of type multipart/form-data with following keys file - (Required) The design file
Response Example
{ "$id": "1", "Success": true, "Data": { "$id": "2", "Errors": [], "Warnings": [ { "$id": "3", "Code": 7008, "Message": "The image uses semi-transparency", "PulseIdLogId": null } ], "Filename": "MfF1iGaZXkiIE5x_H-EqAA.png", "ImagePreview": "iVBORw0.......", "DPI": 300, "Width": 1837.0, "Height": 2550.0, "TrimmedWidth": 1420.0, "TrimmedHeight": 1501.0, "TrimmedLeft": 209.0, "TrimmedTop": 686.0 } }
POST
/api/Designer/ValidateImage
Reduce image colors
Request Example
/api/Designer/ValidateImage { "ReduceColorFilename" : "image.png", "ColorsMapping" : [ { "OriginalColor" : { "Red" : 100, "Blue": 100, "Green" : 100, "Alpha" : 100 }, "NewColor" : { "Red" : 10, "Blue": 10, "Green" : 10, "Alpha" : 10 } }, { "OriginalColor" : { "Red" : 101, "Blue": 101, "Green" : 101, "Alpha" : 101 }, "NewColor" : { "Red" : 10, "Blue": 10, "Green" : 10, "Alpha" : 10 } } ] }
Response Example
{ "$id": "1", "Success": true, "Data": { "$id": "2", "Errors": [], "Warnings": [ { "$id": "3", "Code": 7008, "Message": "The image uses semi-transparency", "PulseIdLogId": null } ], "Filename": null, "ImagePreview": null, "DPI": 300, "Width": 3300.0, "Height": 2557.0, "TrimmedWidth": 3300.0, "TrimmedHeight": 2557.0, "TrimmedLeft": 0.0, "TrimmedTop": 0.0 } }
POST
/api/Designer/ReduceImageColors
Returns a job name
Request Example
/api/Designer/ReduceImageColors?fileName=image.png&maxNumColors=256
Response Example
{ "$id": "1", "Success": true, "Data": { "$id": "2", "Colors": [ { "$id": "3", "Red": 89, "Green": 245, "Blue": 32, "Alpha": 0, "HexValue": "transparent", "NumPixels": 3496388, "NumPixelsPercentage": 41.435726052073335 }, { "$id": "4", "Red": 92, "Green": 141, "Blue": 132, "Alpha": 255, "HexValue": "5C8D84", "NumPixels": 1402384, "NumPixelsPercentage": 16.619665564522819 }, { "$id": "5", "Red": 199, "Green": 113, "Blue": 88, "Alpha": 255, "HexValue": "C77158", "NumPixels": 1248003, "NumPixelsPercentage": 14.790094926582999 }, { "$id": "6", "Red": 234, "Green": 224, "Blue": 152, "Alpha": 255, "HexValue": "EAE098", "NumPixels": 1163549, "NumPixelsPercentage": 13.789229802917719 }, { "$id": "7", "Red": 244, "Green": 188, "Blue": 71, "Alpha": 255, "HexValue": "F4BC47", "NumPixels": 1127776, "NumPixelsPercentage": 13.365283653903131 } ], "ReducedImagePreview": "iVBORw0KGgoAAAANSUhEUgAADOQAA.....", "ReducedImageFilename": "image-ReducedColors.png", "Errors": [] } }
POST
/api/Designer/MarkThinAreas
Mark Thin Areas
Request Example
/api/Designer/MarkThinAreas { "OriginalFilename" : null, // OriginalFilename or ReduceColorFilename is required. "ReduceColorFilename" : "image.png", "Tolerance" : 0, "ColorsMapping" : [ { "OriginalColor" : { "Red" : 100, "Blue": 100, "Green" : 100, "Alpha" : 100 }, "NewColor" : { "Red" : 10, "Blue": 10, "Green" : 10, "Alpha" : 10 } }, { "OriginalColor" : { "Red" : 101, "Blue": 101, "Green" : 101, "Alpha" : 101 }, "NewColor" : { "Red" : 10, "Blue": 10, "Green" : 10, "Alpha" : 10 } } ] }
Response Example
{ "$id": "1", "Success": true, "Data": { "$id": "2", "MarkedThinAreasImage": null, "ThinAreasCount": 0, "Errors": [] } }