Resources

The Shirtplatform API is a comprehensive REST service for viewing the product and motive catalog, other shop resources, and making and completing orders for our printing and fulfillment services.

Account
The Account resource is a collection of the general settings and information about merchants's account. One account can have multiple shops.

The resource lets you retrieve information about the account but doesn't let you update any information. Only the merchant can update this information from inside the Shirtplatform admin.

Authentication
An app can interact with the Shirtplatform API on behalf of a single account. Before it can interact with the Shirtplatform API, your app must provide the necessary authentication credentials.

Private resources are secured with the HTTP Basic Auth mechanism.

Country
The Country resource represents the tax rates applied to orders and used currency from the different countries where a shop sells its products.
Filter
A stored filter defines reusable query criteria for paginated list endpoints.

Create a filter via POST /rest/filters with a JSON or XML body describing the target entity, expressions, and sort order. The returned filterId can then be passed as a query parameter to any list endpoint that supports filtering. Filters are scoped to the authenticated user and deduplicated by content digest.

Motive
A motive is a graphical element that can be placed on a product design.

Motives are the basic visual building blocks of designs. Users can choose motives from the platform library or upload their own. Each motive can have localizations for different languages, and its image can be retrieved in various sizes and formats.

POST /accounts/{accountId}/shops/{shopId}/motives · Create a new motive GET /accounts/{accountId}/shops/{shopId}/motives · List all motives for the shop GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId} · Get a single motive by its id PUT /accounts/{accountId}/shops/{shopId}/motives/{motiveId} · Update an existing motive DELETE /accounts/{accountId}/shops/{shopId}/motives/{motiveId} · Delete a motive GET /accounts/{accountId}/shops/{shopId}/motives/allCustomizable · List all customizable motives for the shop GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/assignedCategories · List all category assignments for a motive GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/image · Get the rendered image of a motive GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/localizations · List all localizations for a motive GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/tags · List all tags assigned to a motive GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/technologies · List all print technologies for a motive GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/assignedCategories/{assignedCategoryId} · Get a single category assignment by its id GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/localizations/{localizationId} · Get a single motive localization by its id GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/tags/{tagId} · Get a single motive tag by its id GET /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/technologies/{motivePrintTechnologyId} · Get a single motive print technology by its id POST /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/assignedCategories · Create a new category assignment for a motive POST /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/bitmap · Upload a bitmap image for a motive POST /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/localizations · Create a new motive localization POST /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/technologies · Create a new motive print technology DELETE /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/localizations/{localizationId} · Delete a motive localization PUT /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/localizations/{localizationId} · Update a motive localization PUT /accounts/{accountId}/shops/{shopId}/motives/{motiveId}/tags/{tagId} · Assign a tag to a motive
Order
An order is a customer's completed request to purchase one or more products from a shop.

Orders can be created through the API, but no payment information will be collected, and no transaction performed. You can mark the order with any payment status.

POST /accounts/{accountId}/shops/{shopId}/orders · Create a new order GET /accounts/{accountId}/shops/{shopId}/orders · Get a list of all orders for your shop GET /accounts/{accountId}/shops/{shopId}/orders/{orderId} · Get a single order by its id PUT /accounts/{accountId}/shops/{shopId}/orders/{orderId} · Update the order by its id (updates uniqueID only) DELETE /accounts/{accountId}/shops/{shopId}/orders/{orderId} · Delete the order by its id GET /accounts/{accountId}/shops/{shopId}/orders/expanded · Get a list of all orders (expanded) for your shop GET /accounts/{accountId}/shops/{shopId}/orders/by-uniqueid/{uniqueId} · Get a single order by its custom uniqueId GET /accounts/{accountId}/shops/{shopId}/orders/expanded/{orderId} · Get a single order (expanded) by its id GET /accounts/{accountId}/shops/{shopId}/orders/expanded/by-uniqueid/{uniqueId} · Get a single order (expanded) by its custom uniqueId POST /accounts/{accountId}/shops/{shopId}/orders/usingCreatorSE · Create a new order in deferred processing mode using the CreatorSE DELETE /accounts/{accountId}/shops/{shopId}/orders/{orderId}/cancelOrder · Cancels an existing order for a specific account and shop PUT /accounts/{accountId}/shops/{shopId}/orders/{orderId}/commitOrder · Commits an order for the given account and shop with an optional financial status DELETE /accounts/{accountId}/shops/{shopId}/orders/{orderId}/production/flag/{flagName} · Removes a specific flag from an order in production POST /accounts/{accountId}/shops/{shopId}/orders/{orderId}/production/flag/{flagName} · Adds a production flag to a specific order for a given account and shop
OrderedProduct
OrderedProduct contains information about an item in the order.
GET /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts · Get a list of items for your order GET /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts/{orderedProductId} · Get a single order item by its id DELETE /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts/{orderedProductId} · Delete the OrderedProduct by its id GET /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts/{orderedProductId}/changePrintTechnologyPreview · [For Testing Purposes] Get preview of ordered item after changing of print technology of all elements GET /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts/{orderedProductId}/image · Get image for your OrderedProduct POST /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts/usingCreatorSE · Create a new ordered product using CreatorSE POST /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts/usingBaseProduct/{productId} · Create a new ordered product using base product POST /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts/usingTemplateProduct/{designedTemplateProductId} · Save new ordered product using designedTemplate PUT /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts/{orderedProductId}/changePrintTechnology · [For Testing Purposes] Change print technology of all elements POST /accounts/{accountId}/shops/{shopId}/orders/{orderId}/orderedProducts/{orderedProductId}/share · Share ordered product
Product
Manages products within a shop. A product is a template that defines how a physical item (e.g. a t-shirt, mug, or poster) should be printed and sold. Each product is composed of views (front, back, sleeve), colors, sizes, SKUs, prices, localizations, category assignments, print technology configurations, and preview images.

All endpoints require the accountId and shopId path parameters to scope operations to a specific shop within an account.

GET /accounts/{accountId}/shops/{shopId}/products · List products in the shop GET /accounts/{accountId}/shops/{shopId}/products/{productId} · Get a product by its ID GET /accounts/{accountId}/shops/{shopId}/products/expanded · List products with all sub-resources expanded inline (views, colors, sizes, SKUs, prices, etc GET /accounts/{accountId}/shops/{shopId}/products/expanded/{productId} · Get a product by its ID with all sub-resources expanded inline (views, colors, sizes, SKUs, prices, localizations, print technologies, etc GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedAttributeListItems · List attribute list item assignments for a specific product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedCategories · List category assignments for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedColors · List color assignments for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedFactories · List factory assignments for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies · List print technology assignments for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedSizes · List size assignments for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViewColors · List all view-color associations for a product across all views GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews · List view assignments for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/image · Get a rendered product preview image using the default view and color GET /accounts/{accountId}/shops/{shopId}/products/{productId}/localizations · List localizations for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/measurementImage · Get the measurement image for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/prices · List prices for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/sku · List SKUs (Stock Keeping Units) for a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedAttributeListItems/{assignedAttributeListItemId} · Get an attribute list item assignment by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedCategories/{assignedCategoryId} · Get a category assignment by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedColors/{assignedColorId} · Get a color assignment by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedFactories/{assignedFactoryId} · Get a factory assignment by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId} · Get a print technology assignment by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedSizes/{assignedSizeId} · Get a size assignment by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViewColors/{assignedViewColorId} · Get a view-color association by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews/{assignedViewId} · Get a view assignment by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/localizations/{localizationId} · Get a product localization by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/prices/{priceId} · Get a price by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/printStyles/userMotives · Get the print style limits for user motives on a product GET /accounts/{accountId}/shops/{shopId}/products/{productId}/sku/{skuId} · Get a SKU by its ID GET /accounts/{accountId}/shops/{shopId}/products/by-sku/{sku}/printStyles/userMotives · Get the print style limits for user motives by SKU string instead of product ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyBrothers · List Brother printer setups under a print technology assignment GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyColors · List Color setups under a print technology assignment GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyGenerals · List General printer setups under a print technology assignment GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyKornits · List Kornit printer setups under a print technology assignment GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyMedias · List Media setups under a print technology assignment GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews/{assignedViewId}/assignedColors · List view-color associations for a product view GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews/{assignedViewId}/assignedStickers · List sticker assignments for a product view GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews/{assignedViewId}/colisions · List collision zones for a product view GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews/{assignedViewId}/sourceSwf · Get the source SWF (Flash) file for a product view GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyBrothers/{printTechnologyBrotherId} · Get a Brother printer setup by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyColors/{printTechnologyColorId} · Get a Color setup by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyGenerals/{printTechnologyGeneralId} · Get a General printer setup by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyKornits/{printTechnologyKornitId} · Get a Kornit printer setup by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedPrintTechnologies/{assignedPrintTechnologyId}/printTechnologyMedias/{printTechnologyMediaId} · Get a Media setup by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews/{assignedViewId}/assignedColors/{assignedColorId} · Get a view-color association by its view and color IDs GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews/{assignedViewId}/assignedStickers/{assignedStickerId} · Get a sticker assignment by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews/{assignedViewId}/colisions/{colisionId} · Get a collision zone by its ID GET /accounts/{accountId}/shops/{shopId}/products/{productId}/assignedViews/{assignedViewId}/assignedColors/{assignedColorId}/image · Get a rendered product preview image for a specific view and color combination
Shop
The Shop resource is a collection of the general settings and information about the store.

The resource lets you retrieve information about the store but doesn't let you update any information. Only the merchant can update this information from inside the Shirtplatform admin.

Webhook
You can use webhook subscriptions to receive notifications about particular events in your shops. After you've subscribed to a webhook, you can let your app execute code immediately after specific events occur in your shops.

For example, you can rely on webhooks to trigger an action in your app when a customer creates a new order or shirtplatform fulfills an order.

By using webhooks subscriptions you can make fewer API calls overall, which makes sure that your apps are more efficient and update quickly.