Back to Collection Items
' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim http As New ChilkatHttp
Dim success As Long
' Use this online tool to generate code from sample JSON: Generate Code to Create JSON
' The following JSON is sent in the request body.
' {
' "symbol": "AAPL",
' "qty": "4.125",
' "notional": "606.66",
' "side": "buy",
' "type": "market",
' "time_in_force": "day",
' "commission": "1"
' }
Dim json As New ChilkatJsonObject
success = json.UpdateString("symbol","AAPL")
success = json.UpdateString("qty","4.125")
success = json.UpdateString("notional","606.66")
success = json.UpdateString("side","buy")
success = json.UpdateString("type","market")
success = json.UpdateString("time_in_force","day")
success = json.UpdateString("commission","1")
http.SetRequestHeader "Apca-Api-Secret-Key","{{APCA_API_SECRET_KEY}}"
http.SetRequestHeader "Apca-Api-Key-Id","{{APCA_API_KEY_ID}}"
Dim resp As ChilkatHttpResponse
Set resp = http.PostJson3("https://domain.com/v2/orders","application/json",json)
If (http.LastMethodSuccess = 0) Then
Debug.Print http.LastErrorText
Exit Sub
End If
Debug.Print resp.StatusCode
Debug.Print resp.BodyStr
Curl Command
curl -X POST
-H "Apca-Api-Key-Id: {{APCA_API_KEY_ID}}"
-H "Apca-Api-Secret-Key: {{APCA_API_SECRET_KEY}}"
-d '{
"symbol": "AAPL",
"qty": "4.125",
"notional": "606.66",
"side": "buy",
"type": "market",
"time_in_force": "day",
"commission": "1"
}'
https://domain.com/v2/orders
Postman Collection Item JSON
{
"name": "Order",
"request": {
"method": "POST",
"header": [
{
"key": "Apca-Api-Key-Id",
"value": "{{APCA_API_KEY_ID}}",
"type": "text"
},
{
"key": "Apca-Api-Secret-Key",
"value": "{{APCA_API_SECRET_KEY}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"symbol\": \"AAPL\",\n \"qty\": \"4.125\",\n \"notional\": \"606.66\",\n \"side\": \"buy\",\n \"type\": \"market\",\n \"time_in_force\": \"day\",\n \"commission\": \"1\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{HOST}}/v2/orders",
"host": [
"{{HOST}}"
],
"path": [
"v2",
"orders"
]
},
"description": "| Attribute | Type | Requirement | Notes |\n| ----------------- | -------------- | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `symbol` | string | Required | Symbol or asset ID to identify the asset to trade |\n| `qty` | string/number | Required | Number of shares to trade. Can be fractionable for only `market` and `day` order types. |\n| `notional` | string/number | Required | Dollar amount to trade. Cannot work with `qty`. Can only work for `market` order types and `time_in_force = day`. |\n| `side` | string | Required | `buy` or `sell` |\n| `type` | string | Required | `market`, `limit`, `stop`, `stop_limit`, or `trailing_stop` |\n| `time_in_force` | string/number | Required | `day`, `gtc`, `opg`, `cls`, `ioc`, `fok`. Please see Understand Orders for more info. |\n| `limit_price` | string/number | Optional | Required if type is `limit` or `stop_limit` |\n| `stop_price` | string/number | Optional | Required if type is `stop` or `stop_limit` |\n| `trail_price` | string/number | Optional | Required if type is `trailing_stop`, `trail_price` or `trail_percent` is required |\n| `trail_percent` | string/number | Optional | Required if type is `trailing_stop`, `trail_price` or `trail_percent` is required |\n| `extended_hours` | string | Optional | Defaults to `false`. If `true`, order will be eligible to execute in premarket/afterhours. Only works with type `limit` and `time_in_force = day`. |\n| `client_order_id` | string/UUID | Optional | A unique identifier for the order. Automatically generated if not sent. (<= 48 characters) |\n| `order_class` | string/numeric | Optional | `simple`, `bracket`, `oco` or `oto`. For details of non-simple order classes, please see Bracket Order Overview |\n| `take_profit` | object | Optional | Takes in a string/number value for `limit_price` |\n| `stop_loss` | object | Optional | Takes in a string/number values for `stop_price` and `limit_price` |\n| `commission` | string/numeric | Optional | The commission you want to collect from the user. |"
},
"response": [
]
}