Shapeways Developers

Getting started

Get up and running with our API to start developing your own Shapeways integrations. Once you have registered and verified your Shapeways account you are ready to create your first app.


Create your first app

Create a new app to generate the API keys you’ll use to authenticate your API requests. You can access all apps associated with your account from the Manage apps page on the Shapeways Developers site.

Note: From the Manage apps screen, you can create, edit, or delete your applications.


API user account authorization

Your application will need access to users’ Shapeways accounts to upload models and place orders. To get started, you’ll need to decide what type of access your app will need as the user authorization process is different.

Note: The Shapeways API uses 0Auth 2.0 to authenticate users. Learn more about OAuth 2.0.


1. How many accounts will need access to the API?

Only the app owner accountMultiple user accounts

This is the simplest way to get started using the API. Choose this option if the API only needs access to your Shapeways account.

2. Requesting the API Access Tokens

In Manage apps > (Your App) copy your Client ID and Client Secret. Add them to the code below and make a POST request. Save this Access Token & Refresh Token (only for multiple user accounts flow) in a safe place.

// Add your Client ID & Client Secret to the following code examples:
$clientId = 'YOUR_CLIENT_ID';  // replace this
$clientSecret = 'YOUR_CLIENT_SECRET';  // replace this
$url = 'https://api.shapeways.com/oauth2/token';
$params = ['grant_type' => 'client_credentials'];
try {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_USERPWD, $clientId . ':' . $clientSecret);
    curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($ch);
    curl_close($ch);
    // showing response on screen
    print_r($response);

} catch (\Exception $e) {
    // printing error on screen
    echo 'Exception: '. $e->getMessage();
}

Make an API test request

Let’s see if you can make a successful request from the API using our Materials endpoint.


Model management

Easily manage your Shapeways’ models with the /models/v1 API endpoint. Quickly learn how to:

  1. Upload a model(s)
  2. Get model information (Model IDs, material printability, etc)

Upload a model

Upload 3D models to your Shapeways account to check material printability and to prepare your model for ordering.

Note: Learn more about the file types that can be uploaded to Shapeways.


Get model information

Once you’ve uploaded a model to Shapeways, you can use GET requests to find out more about it, including:


Get material information

The /materials/v1 API endpoint gives you access to up-to-date information about Shapeways’ materials. Similar information can be found here.


Placing orders

Use the /orders/v1 API endpoint to integrate with Shapeways fulfillment services to seamlessly place and manage orders. Quickly learn how to:

  1. Place orders
  2. Check order statuses

Check the status of an order

Once an order has been placed, you can use GET /orders/{orderId}/v1 to find out about its current status.


Transaction fees

Contact us if you are a growing business and want to learn about volume discounts.