---
title: "Create a cloud design"
method: POST
path: "/v1/designs"
tags: ["Designs"]
---

# Create a cloud design

`POST /v1/designs`

## Request

- Base URL: `https://electronics-architect.com`
- URL: `https://electronics-architect.com/v1/designs`
- Auth: HTTP bearer

Scope: `write`. The design must validate. Send an `Idempotency-Key` header to make retries safe: the first response is replayed for 24 hours (`Idempotent-Replayed: true`). Creation through the API stops once the account's personal designs (or a team key's team) number 2000, counting designs saved from the editor too (409 DESIGN_LIMIT_REACHED), and design writes — create, update, delete, share — are limited to 30 a minute per account across all its keys.

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `name` string, required
  - `design` Design, required (unresolved $ref)

## Response `201`

Created.

- DesignCreated
  - `id` string
  - `name` string
  - `version` integer
  - `createdAt` string, date-time
  - `editorUrl` string: The deep link that opens THIS design on the canvas (`/app?design=<id>`). Hand this to the person; the editor shows them which key made it.

## Other responses

- `400`: VALIDATION_FAILED or INVALID_REQUEST.
- `401`: No key, a browser token instead of a key, an unknown key, or a revoked key (code KEY_REVOKED).
- `403`: The key lacks a required scope (INSUFFICIENT_SCOPE), or the call needs a plan the account does not have (PLAN_REQUIRED): on the Free plan, compare, exports, Monte Carlo jobs, AI synthesis, a design with more than one sheet, or a save, share or key past the Free limits; or a team key whose team is no longer paid for.
- `409`: DESIGN_LIMIT_REACHED — the account (or team) already holds 2000 designs.
- `413`: PAYLOAD_TOO_LARGE — over 500 KB.
- `429`: RATE_LIMITED: the key's per-minute allowance is used up (or, before any key is recognised, too many requests from one address presented an unknown or revoked key). On the routes that solve inside the request (solve, verify, derating, compare, exports, ai/review, ai/synthesize) it can also be SOLVE_IN_PROGRESS: this account already has 3 calls of that kind running on the server that took the request (solves, AI reviews and syntheses are each counted separately). `Retry-After` is set either way; for SOLVE_IN_PROGRESS it is 2 s for solves and 30 s for AI reviews and syntheses.

---

[API](https://skmtc.dev/electronics-architect/apis/electronics-architect-api.md) · [All operations](https://skmtc.dev/electronics-architect/apis/electronics-architect-api/llms.txt) · [OpenAPI document](https://skmtc.dev/electronics-architect/apis/electronics-architect-api/revisions/98066184ba67?raw)
