Submit Position Instructions
POST/v1/accounts/{account_id}/positions/instructions
Submit one or more position instructions (Exercise, Do-Not-Exercise, Contrary Exercise Advice) against the account.
Batch semantics:
- All rows accepted →
200 OK. Every row is indatawithstatus = SENT. - Partial success →
207 Multi-Status.datacontains every row; rejected rows carrystatus = ENGINE_REJECTED(orREJECTED) andrejection_reason. The top-levelerrorsummarizes the batch failure. - All rows rejected →
4xx/5xxerror response. The HTTP status reflects the underlying cause:409for duplicateinstruction_id,400for validation failures such as DNE/CEA on a non-expiry day,503if the clearing service is unavailable. Nodatais returned.
Pre-flight validation (unknown instrument_id, unencodable
quantity) short-circuits the whole batch with a 4xx before any
row is submitted.
Submit Position Instructions
curl https://api.clearstreet.com/v1/accounts/$ACCOUNT_ID/positions/instructions \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $API_KEY" \
-d '[
{
"instruction_type": "EXERCISE",
"instrument_id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e02",
"quantity": "1",
"instruction_id": "ui-20260424-001"
}
]'{
"data": [
{
"account_id": 122503,
"id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e02",
"instruction_id": "ui-20260424-001",
"instruction_type": "EXERCISE",
"instrument_id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e01",
"quantity": "1",
"status": "SENT",
"symbol": "AAPL 280121C00195000"
}
],
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd01"
}
}{
"data": [
{
"account_id": 122503,
"id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e02",
"instruction_id": "ui-20260424-001",
"instruction_type": "EXERCISE",
"instrument_id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e01",
"quantity": "1",
"status": "SENT",
"symbol": "AAPL 280121C00195000"
},
{
"account_id": 122503,
"id": "00000000-0000-0000-0000-000000000000",
"instruction_id": "ui-20260424-001",
"instruction_type": "EXERCISE",
"instrument_id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e01",
"quantity": "1",
"rejection_reason": "Duplicate exercise instruction",
"status": "ENGINE_REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 409,
"message": "Duplicate exercise instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd02"
}
}{
"error": {
"code": 400,
"message": "DO_NOT_EXERCISE must be submitted on the contract's expiration date"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd03"
}
}{
"error": {
"code": 409,
"message": "Duplicate exercise instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd04"
}
}Returns Examples
{
"data": [
{
"account_id": 122503,
"id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e02",
"instruction_id": "ui-20260424-001",
"instruction_type": "EXERCISE",
"instrument_id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e01",
"quantity": "1",
"status": "SENT",
"symbol": "AAPL 280121C00195000"
}
],
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd01"
}
}{
"data": [
{
"account_id": 122503,
"id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e02",
"instruction_id": "ui-20260424-001",
"instruction_type": "EXERCISE",
"instrument_id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e01",
"quantity": "1",
"status": "SENT",
"symbol": "AAPL 280121C00195000"
},
{
"account_id": 122503,
"id": "00000000-0000-0000-0000-000000000000",
"instruction_id": "ui-20260424-001",
"instruction_type": "EXERCISE",
"instrument_id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e01",
"quantity": "1",
"rejection_reason": "Duplicate exercise instruction",
"status": "ENGINE_REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 409,
"message": "Duplicate exercise instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd02"
}
}{
"error": {
"code": 400,
"message": "DO_NOT_EXERCISE must be submitted on the contract's expiration date"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd03"
}
}{
"error": {
"code": 409,
"message": "Duplicate exercise instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd04"
}
}