Skip to main content
POST
/
investments
/
portfolio
/
orders
curl --request POST \
  --url https://{host}/investments/portfolio/orders \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'x-user-id: <x-user-id>' \
  --data '
{
  "portfolioId": "64f0c51e7fb3fc001234abcd",
  "orderAmount": 100,
  "allocationMethod": "holdings",
  "executeEtfOrdersInRealtime": false
}
'
{
  "id": "64f5b3137fb3fc001234abce",
  "category": "AssetTransaction",
  "status": "Pending",
  "portfolioTransactionCategory": "buy",
  "owner": "64f0c51e7fb3fc001234abcd",
  "portfolio": "64f0c51e7fb3fc001234abcd",
  "consideration": {
    "currency": "EUR",
    "amount": 10000
  },
  "executionWindow": {
    "stocks": {
      "executionType": "MARKET_HOURS",
      "start": "2024-07-12T09:30:00.000Z",
      "end": "2024-07-12T16:00:00.000Z"
    },
    "etfs": {
      "executionType": "MARKET_HOURS",
      "start": "2024-07-12T13:00:00.000Z",
      "end": "2024-07-12T18:00:00.000Z"
    }
  },
  "orders": [
    {
      "id": "64f5b3137fb3fc001234abcf",
      "isin": "US0378331005",
      "side": "Buy",
      "status": "Pending",
      "quantity": 0.5,
      "consideration": {
        "currency": "EUR",
        "amount": 5000
      }
    }
  ],
  "fees": {
    "realtimeExecution": {
      "currency": "EUR",
      "amount": 0
    }
  }
}

Authorizations

Authorization
string
header
required

Auth0-issued access token that includes the scopes listed for the endpoint.

Headers

x-user-id
string
required

User identifier for the M2M client to specify which user's data to access.

Pattern: ^[a-f0-9]{24}$

Body

application/json
portfolioId
string
required

Portfolio identifier (MongoDB ObjectId)

Pattern: ^[a-f0-9]{24}$
orderAmount
number<double>
required

Amount to invest in whole currency units (e.g., 100.0 for 100 EUR)

Required range: x >= 0.01
allocationMethod
enum<string>
required

Method for distributing the investment across assets

Available options:
targetAllocation,
holdings
executeEtfOrdersInRealtime
boolean
required

Whether to execute ETF orders in real-time. Only users enabled for real-time execution can set this to true.

Response

Portfolio buy order executed successfully

Asset transaction enriched with display-ready fields.

id
string
required
category
enum<string>
required
Available options:
AssetTransaction
status
string
required

Current transaction status (Pending, PendingGift, Settled, etc.).

orders
object[]
required
portfolioTransactionCategory
enum<string>
Available options:
update,
buy,
sell
owner
string

User identifier owning the transaction.

portfolio
string

Portfolio identifier associated with the transaction.

consideration
object
executionWindow
object

Execution windows separated by asset category (matches domain ExecutionWindowsType)

fees
object