Materials
Use the /materials/v1 API endpoint to get up-to-date information about Shapeways’ materials.
GET - List materials
Retrieves information on all available 40+ Shapeways’ materials.
Request
Response
{ "<materialId>":{ "id":"<materialId>", "type":"object", "description":"Material Object", "properties":{ "title":{ "type":"string", "description":"Material name" }, "supportsColorFiles":{ "type":"boolean", "description":"Material supports color" }, "printerId":{ "type":"int", "description":"Printer id that this material is printed on" }, "swatch":{ "type":"string", "description":"The url for the material swatch" }, "restrictions":{ "id":"restrictions", "type":"object", "description":"Material Restriction Object", "properties":{ "<restrictionId>":{ "id":"<restrictionId>", "type":"object", "description":"Material Restriction Object", "properties":{ "restrictionId":{ "type":"int", "description":"Material Restriction ID" }, "restrictionName":{ "type":"string", "description":"Material Restriction Name" }, "restrictionEntityIds":{ "type":"array", "description":"Material Restriction Entity Ids", "default":[ ], "items":{ "type":"int", "description":"Material Restriction Entity Id" } } } } } } } } }
GET - Material information
Retrieves information for a specific material (Specified by the materialId)
Request
Response
{ "<restrictionId>":{ "id":"<restrictionId>", "type":"object", "description":"Material Restriction Object", "properties":{ "restrictionId":{ "type":"int", "description":"Material Restriction ID" }, "restrictionName":{ "type":"string", "description":"Material Restriction Name" }, "restrictionEntityIds":{ "type":"array", "description":"Material Restriction Entity Ids", "default":[ ], "items":{ "type":"int", "description":"Material Restriction Entity Id" } } } } }
Models
Easily manage your Shapeways’ 3D models with the /models/v1 API endpoint.
POST - Upload a model
Uploads a new model. See Upload a model for instructions and code examples.
Request
- 0.001 - millimeter
- 0.0254 - inch
- 0 - You do not have rights to, nor have authorization to use this model
- 1 - You have rights to, or have authorization to use this model
- 0 - You do not accept the Terms and Conditions
- 1 - You accept the Terms and Conditions
- 0 (default) - Private Model (viewable only with a private key)
- 1 - Model can be purchased
- 1 - Model can be downloaded
{ "type":"string", "description":"The name of the tag." }
{ "<materialId>":{ "id":"<materialId>", "type":"object", "description":"Material Object", "properties":{ "markup":{ "type":"float", "description":"Markup amount" }, "isActive":{ "type":"boolean", "description":"Is this material active" }, "price":{ "type":"float", "description":"Price (USD)" } } } }
{ "type":"int", "description":"Category Id" }
Response
{ "<materialId>":{ "id":"<materialId>", "type":"object", "description":"Material Object", "properties":{ "markup":{ "type":"float", "description":"Markup amount" }, "isActive":{ "type":"boolean", "description":"Is this material active" }, "price":{ "type":"float", "description":"Price" } } } }
{ "<categoryId>":{ "id":"<categoryId>", "type":"object", "description":"Category Object", "properties":{ "title":{ "type":"string", "description":"Category title" }, "parentId":{ "type":"int", "description":"Category's parent category. For topmost categories, 0 will be returned to indicate that there is no parent." } } } }
{ "<address>":{ "id":"<address>", "type":"object", "description":"Url Object", "properties":{ "address":{ "type":"string", "description":"Url Address" } } } }
GET - List models
Retrieves a list of models in the Shapeways account.
Request
Response
{ "modelId":{ "type":"int", "description":"Model ID" }, "modelVersion":{ "type":"int", "description":"Model version" }, "title":{ "type":"string", "description":"Model title" } }
GET - Model information
Retrieves information for a specific model like material printability and price (Specified by the modelId). See Get model information for instructions and code examples.
Request
Response
{ "<materialId>":{ "id":"<materialId>", "type":"object", "description":"Material Object", "properties":{ "markup":{ "type":"float", "description":"Markup amount" }, "isActive":{ "type":"boolean", "description":"Is this material active" }, "price":{ "type":"float", "description":"Price" } } } }
{ "<categoryId>":{ "id":"<categoryId>", "type":"object", "description":"Category Object", "properties":{ "title":{ "type":"string", "description":"Category title" }, "parentId":{ "type":"int", "description":"Category's parent category. For topmost categories, 0 will be returned to indicate that there is no parent." } } } }
{ "<address>":{ "id":"<address>", "type":"object", "description":"Url Object", "properties":{ "address":{ "type":"string", "description":"Url Address" } } } }
{ "<restrictionId>":{ "id":"<restrictionId>", "type":"object", "description":"Material Restriction Object", "properties":{ "restrictionId":{ "type":"int", "description":"Material Restriction ID" }, "restrictionName":{ "type":"string", "description":"Material Restriction Name" }, "restrictionEntityIds":{ "type":"array", "description":"Material Restriction Entity Ids", "default":[ ], "items":{ "type":"int", "description":"Material Restriction Entity Id" } } } } }
DELETE - Delete a model
Deletes a model from the Shapeways’ account (Specified by the modelId).
Request
Response
Orders
Use the /orders/v1 API endpoint to integrate with Shapeways fulfillment services to seamlessly place and manage orders.
POST - Place an order
Creates and places a new order. See Placing your first order instructions and code examples.
Request
{ "type":"object", "description":"Item in your order", "properties":{ "modelId":{ "type":"int", "description":"Model id" }, "materialId":{ "type":"int", "description":"Material id" }, "quantity":{ "type":"int", "description":"Quantity of models in this material" } } }
{ "type":"string", "description":"Incentive code" }
- Fastest - use the fastest shipping option available. If multiple options are the fastest, use the cheapest
- Priority - (Usually +30% more per item) Get in front of the line. Ensure your deliveries with our published manufacturing times
- This string will be printed on the packing slip inside the box and on the downloadable PDF invoice.
{ "type":"object", "description":"Metadata can only be used by certain applications.", "properties":{ "modelId":{ "type":"int", "description":"Model id" }, "name":{ "type":"string", "description":"Metadata Name" }, "value":{ "type":"string", "description":"Metadata value" } } }
Response
{ "type":"int", "description":"Production Order Id" }
GET - List orders
Retrieves information like number of orders, their statuses, and shipping dates.
Request
Response
{ "total":{ "type":"int", "description":"Total number of orders" }, "placed":{ "type":"int", "description":"Number of orders placed" }, "in_production":{ "type":"int", "description":"Number of orders in production" }, "cancelled":{ "type":"int", "description":"Number of orders cancelled" }, "unknown":{ "type":"int", "description":"Number of orders in an unknown status" }, "shipped":{ "type":"int", "description":"Number of orders shipped" } }
{ "id":"<orderId>", "type":"object", "description":"Contains target ship date, target delivery date and shipments for each order", "properties":{ "orderId":{ "type":"int", "description":"Order id" }, "targetDeliveryDate":{ "type":"string", "description":"Target delivery date" }, "targetShipDate":{ "type":"string", "description":"Target to ship date" }, "shipments":{ "type":"array", "description":"Shipments for this order", "items":{ "id":"<shipmentId>", "type":"object", "description":"Shipment Information", "properties":{ "shipmentId":{ "type":"int", "description":"Shipment id" }, "shipDate":{ "type":"string", "description":"Ship date" }, "carrier":{ "type":"string", "description":"Shipment carrier" }, "trackingNumber":{ "type":"string", "description":"Tracking number" } } } }, "orderProducts":{ "type":"array", "description":"Contains detailed information for the items contained within each purchased product.", "items":{ "id":"<orderProductId>", "type":"object", "description":"Contains a detailed summary of each item and it's status", "properties":{ "orderProductId":{ "type":"int", "description":"Unique id for this product in this order" }, "spin":{ "type":"string", "description":"Shapeways Product Identification Number" }, "productTitle":{ "type":"string", "description":"Product title at the time of purchase" }, "optionId":{ "type":"int", "description":"Unique id for this product in its purchased option" }, "optionDescription":{ "type":"int", "description":"Name of this item in its ordered material and variant options" }, "quantity":{ "type":"int", "description":"Total quantity of this product purchased in this order" }, "models":{ "type":"array", "description":"Contains detailed information for each model in the purchased product", "items":{ "type":"object", "description":"3D printed models in your ordered product", "properties":{ "modelId":{ "type":"int", "description":"Model id" }, "materialId":{ "type":"int", "description":"Material id" }, "title":{ "type":"int", "description":"The title of the model at time of purchase" } } } } } } } } }
GET - Order information
Retrieves information for a specific order placed through the API (Specified by the orderId). See Check the status of an order for instructions and code examples.
Request
- Default: 20
Response
{ "total":{ "type":"int", "description":"Total number of orders" }, "placed":{ "type":"int", "description":"Number of orders placed" }, "in_production":{ "type":"int", "description":"Number of orders in production" }, "cancelled":{ "type":"int", "description":"Number of orders cancelled" }, "unknown":{ "type":"int", "description":"Number of orders in an unknown status" }, "shipped":{ "type":"int", "description":"Number of orders shipped" } }
{ "id":"<orderId>", "type":"object", "description":"Contains target ship date, target delivery date and shipments for each order", "properties":{ "orderId":{ "type":"int", "description":"Order id" }, "targetDeliveryDate":{ "type":"string", "description":"Target delivery date" }, "targetShipDate":{ "type":"string", "description":"Target to ship date" }, "shipments":{ "type":"array", "description":"Shipments for this order", "items":{ "id":"<shipmentId>", "type":"object", "description":"Shipment Information", "properties":{ "shipmentId":{ "type":"int", "description":"Shipment id" }, "shipDate":{ "type":"string", "description":"Ship date" }, "carrier":{ "type":"string", "description":"Shipment carrier" }, "trackingNumber":{ "type":"string", "description":"Tracking number" }, "trackingLink":{ "type":"string", "description":"Shipment carrier's tracking URL (returned only if trackingNumber is available)" } } } }, "orderProducts":{ "type":"array", "description":"Contains detailed information for the items contained within each purchased product.", "items":{ "id":"<orderProductId>", "type":"object", "description":"Contains a detailed summary of each item and it's status", "properties":{ "orderProductId":{ "type":"int", "description":"Unique id for this product in this order" }, "spin":{ "type":"string", "description":"Shapeways Product Identification Number" }, "productTitle":{ "type":"string", "description":"Product title at the time of purchase" }, "optionId":{ "type":"int", "description":"Unique id for this product in its purchased option" }, "optionDescription":{ "type":"int", "description":"Name of this item in its ordered material and variant options" }, "quantity":{ "type":"int", "description":"Total quantity of this product purchased in this order" }, "models":{ "type":"array", "description":"Contains detailed information for each model in the purchased product", "items":{ "type":"object", "description":"3D printed models in your ordered product", "properties":{ "modelId":{ "type":"int", "description":"Model id" }, "materialId":{ "type":"int", "description":"Material id" }, "title":{ "type":"int", "description":"The title of the model at time of purchase" } } } } } } } } }
Shipping Options
Use the /cart/shipping-options/v1 API endpoint to determine what shipping options are available for your order.
GET - Shipping Options
Retrieves information about the shipping options available to the shipping location
Request
Response
{ "shippingOptionId":{ "type":"int", "description":"Id of the intended shipping option. Should be included in the request to the order creation endpoint to set the shipping option" }, "price":{ "type":"float", "description":"Cost of that shipping option without tax in USD" }, "name":{ "type":"string", "description":"Display name of shipping option" }, "inTransitDaysMin":{ "type":"int", "description":"Minimum shipping days (Business days)" }, "inTransitDaysMax":{ "type":"int", "description":"Maximum shipping days (Business days)" } }