---
title: "Create portfolios order"
method: POST
path: "/portfolios/orders"
tags: ["Portfolios"]
---

# Create portfolios order

`POST /portfolios/orders`

Create portfolios order

## Headers

- `idempotency-key` string, uuid, required

## Request body

- object
  - `user_id` string, uuid, required — User unique identifier.
  - `account_id` string, uuid, required — Account unique identifier.
  - `cash_amount` string, required
  - `currency` 'EUR' | 'GBP', required — Alphabetic three-letter [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. * EUR - Euro * GBP - Pound Sterling
  - `side` 'BUY' | 'SELL', required — Side of the portfolio order. * BUY - * SELL -
  - `post_tax` boolean — Cash amount is post-tax value

## Response `200`

Portfolios order

- object
  - `id` string, uuid, required
  - `created_at` string, date-time, required — Date and time when the resource was created. [RFC 3339-5](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6), [ISO8601 UTC](https://www.iso.org/iso-8601-date-and-time-format.html)
  - `updated_at` string, date-time, required — Date and time when the resource was last updated. [RFC 3339-5](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6), [ISO8601 UTC](https://www.iso.org/iso-8601-date-and-time-format.html)
  - `user_id` string, uuid — User unique identifier.
  - `account_id` string, uuid, required — Account unique identifier.
  - `allocation_id` string, uuid
  - `cash_amount` string, required
  - `currency` 'EUR' | 'GBP', required — Alphabetic three-letter [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code. * EUR - Euro * GBP - Pound Sterling
  - `status` 'NEW' | 'PROCESSING' | 'FILLED' | 'SETTLED' | 'CANCELLED', required — Execution status of the Portfolio Order. * NEW - * PROCESSING - * FILLED - * SETTLED - * CANCELLED -
  - `type` 'BUY' | 'SELL' | 'REBALANCING' — Type of the Portfolio Order. * BUY - * SELL - * REBALANCING -
  - `post_tax` boolean, required — Cash amount is post-tax value
  - `orders` object[], required — Orders associated with this portfolio order
    - `id` string, uuid, required
    - `side` 'BUY' | 'SELL', required — Side of the portfolio order. * BUY - * SELL -
    - `status` 'NEW' | 'PROCESSING' | 'FILLED' | 'CANCELLED', required — The execution status of the order. * NEW - * PROCESSING - * FILLED - * CANCELLED -
  - `client_reference` string, required
  - `initiation_flow` 'API' | 'SAVINGS_PLAN', required — What triggered the order creation . * API - * SAVINGS_PLAN -
  - `cancellation_reason` 'ACCOUNT_IS_EMPTY' | 'CANCELLED_BY_CLIENT' | 'CANCELLED_BY_UPVEST' | 'PORTFOLIO_IS_BALANCED' | 'SELL_LIMIT_EXCEEDED' — Explains the reason why the order was cancelled . * ACCOUNT_IS_EMPTY - * CANCELLED_BY_CLIENT - * CANCELLED_BY_UPVEST - * PORTFOLIO_IS_BALANCED - * SELL_LIMIT_EXCEEDED -
  - `cancellation_details` string

## Other responses

- `400` — Bad Request. The incoming request had a malformed parameter/object.
- `401` — Unauthorized. The caller has not been authenticated.
- `403` — Forbidden. The caller has been authenticated but is not allowed to take the requested action.
- `404` — Not Found. The requested resource could not be found.
- `406` — Not Acceptable. The resource does not have a current representation that would be acceptable to the user agent. "Accept" header defined unsupported value.
- `429` — Too Many Requests. The caller has exceeded their quota for the time period and has been throttled.
- `500` — Internal Server Error. The service encountered an unexpected error.
- `503` — Service Unavailable. The service handling for this request cannot be reached at this time.
- `504` — Gateway Timeout. The service gateway has reached its internal timeout.

---

[API](https://skmtc.net/upvest/apis/upvest-investment-api.md) · [All operations](https://skmtc.net/upvest/apis/upvest-investment-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/upvest/upvest-investment-api/revisions/eb94c0091916/schema)
