---
title: "Create portfolio"
method: POST
path: "/portfolios"
tags: ["Portfolio"]
---

# Create portfolio

`POST /portfolios`

Create a portfolio

## Request body

- PortfolioIn
  - `name` string, required
  - `description` string, nullable

## Response `201`

Document created, URL follows

- Portfolio
  - `id` string, uuid, required
  - `name` string, required
  - `description` string, nullable
  - `created_time` string, date-time, required
  - `status` string, required

## Other responses

- `400` — Bad request syntax or unsupported method

## Changes

- **2026-07-13** `332ef685d64d` — 3 breaking, 4 info
  - the response property `description` became optional for the status `201`
  - response property `description` list-of-types was widened by adding types `null` to media type `application/json` of response `201`
  - removed the required property `created` from the response with the `201` status
  - the request property `description` became optional
  - …3 more
- **2024-05-22** `eb9dca23812a` — 5 breaking, 3 info
  - the request property `description` became required
  - request property `description` list-of-types was narrowed by removing types `null` from media type `application/json`
  - the `id` response's property type/format changed from `string`/`uuid` to `string`/`` for status `201`
  - removed the required property `created_time` from the response with the `201` status
  - …4 more

[Change history](https://skmtc.dev/equiwatt/apis/equiwatt-api/changes/portfolios/post.md)

---

[API](https://skmtc.dev/equiwatt/apis/equiwatt-api.md) · [All operations](https://skmtc.dev/equiwatt/apis/equiwatt-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/equiwatt/equiwatt-api/revisions/332ef685d64d/schema)
