Design Studio API

About the Design Studio API

Overview

Design Studio is where you build and manage message content in Customer.io. These endpoints let you create and manage emails and SMS specifically:

  • Manage custom components, a way of reusing content across emails
  • Create emails and translations, including validating liquid, sending tests, and previewing in a variety of email clients
  • Create SMS messages
  • Link and publish emails and SMS to workflows

You can also add them to folders to keep them organized in the UI.

To manage assets like images and PDFs, use the Assets endpoints.

The Design Studio and Assets APIs run on the same host as our App API and uses the same App API Key.

When your email is ready to send, you can also use the App API to trigger API-triggered broadcasts, one-time sends, and transactional messages. You can't start an automation via API.

Design Studio has its own extended HTML syntax that we recommend using if you want to the option of editing content in the UI. Otherwise, you can use standard HTML syntax, but check out our HTML and CSS best practices.

Build your integration to ignore fields it doesn't recognize

As we release new features, we add endpoints and we may even add fields to existing endpoints. We don't announce these additions in advance. Fields we add will be backward compatible: existing fields keep their names and types.

Build your integration to ignore fields it doesn't recognize. If you validate responses against a schema, make sure the schema accepts unknown keys. In JSON Schema, for example, don't set additionalProperties: false.

Use our Postman collection

The Design Studio requests are part of our App API Postman collection, in the Design Studio API folder. They use the same app_api_url variable and App API Key as the rest of the collection.

We update the collection automatically whenever we release changes to our documentation. If you fork it, you might want to turn off the Watch original collection option so you don't get a notification for each update.

NOTE: Postman requests default to our US APIs. If you're in our European (EU) region, add -eu to the app_api_url variable.

Run In Postman

Server addresses: US and EU

Customer.io hosts services in the United States (US) and European Union. Select the appropriate server address for your region.

Region Server Address
US https://api.customer.io
EU https://api-eu.customer.io

Authentication

All requests to the Design Studio API use an App API Key, the same key you use for our App API.

To authenticate, provide your key as a Bearer token in a HTTP Authorization header. You can create and manage your API keys—including keys with different scopes—in your account settings page. Each operation on this page references the authorization header it requires.

Rate Limits

Design Studio endpoints share the App API limit of 10 requests per second per workspace. Every call in your workspace that isn't separately rate limited draws from this bucket, writes included. The exceptions are:

  • Link and publish, render, preview, review, and inbox preview requests share a tighter bucket of 5 requests per second per workspace, because each call starts a server-side render.
  • Test sends draw from a per-workspace bucket (burst of 20, refilling one every 9 seconds) that you share with test sends from the dashboard, and a per-IP bucket (burst of 30, refilling one every 10 seconds).

When you exceed a limit, the API returns a 429 response with a Retry-After header.

Rate limits are subject to change. We may adjust these thresholds to ensure stable performance for all customers.