Submit Position Instructions
PositionSubmitPositionInstructionsResponse v1().positions().submitPositionInstructions(PositionSubmitPositionInstructionsParamsparams, RequestOptionsrequestOptions = RequestOptions.none())
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 = REJECTEDandrejection_reason. The top-levelerrorsummarizes the batch failure. - All rows rejected →
4xx/5xx. The HTTP status reflects the aggregate cause:409when every row was a duplicate,400for validation failures like DNE/CEA on a non-expiry day,503if the clearing service is unavailable.datastill contains every row carryingstatus = REJECTEDandrejection_reasonso callers can attribute failures byinstruction_id; the top-levelerrorsummarizes the batch.
Submit Position Instructions
package com.clearstreet.api.example;
import com.clearstreet.api.client.ClearStreetClient;
import com.clearstreet.api.client.okhttp.ClearStreetOkHttpClient;
import com.clearstreet.api.models.v1.positions.PositionInstructionType;
import com.clearstreet.api.models.v1.positions.PositionSubmitPositionInstructionsParams;
import com.clearstreet.api.models.v1.positions.PositionSubmitPositionInstructionsResponse;
public final class Main {
private Main() {}
public static void main(String[] args) {
ClearStreetClient client = ClearStreetOkHttpClient.builder()
.fromEnv()
.apiKey("My API Key")
.build();
PositionSubmitPositionInstructionsParams params = PositionSubmitPositionInstructionsParams.builder()
.accountId(0L)
.addInstruction(PositionSubmitPositionInstructionsParams.Instruction.builder()
.instructionType(PositionInstructionType.EXERCISE)
.instrumentId("0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e02")
.quantity("1")
.build())
.build();
PositionSubmitPositionInstructionsResponse response = client.v1().positions().submitPositionInstructions(params);
}
}{
"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": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 409,
"message": "Duplicate exercise instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd02"
}
}{
"data": [
{
"account_id": 122503,
"id": "00000000-0000-0000-0000-000000000000",
"instruction_id": "ui-20260424-001",
"instruction_type": "DO_NOT_EXERCISE",
"instrument_id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e01",
"quantity": "1",
"rejection_reason": "DO_NOT_EXERCISE must be submitted on the contract's expiration date",
"status": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 400,
"message": "DO_NOT_EXERCISE must be submitted on the contract's expiration date"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd03"
}
}{
"data": [
{
"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; existing_id=019e7415-de03-70c3-8ca1-9fdb72dfdbbc",
"status": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 409,
"message": "Duplicate exercise instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd04"
}
}{
"data": [
{
"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": "Could not process the instruction",
"status": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 500,
"message": "Could not process the instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd05"
}
}{
"data": [
{
"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": "Clearing service unavailable",
"status": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 503,
"message": "Clearing service unavailable"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd06"
}
}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": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 409,
"message": "Duplicate exercise instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd02"
}
}{
"data": [
{
"account_id": 122503,
"id": "00000000-0000-0000-0000-000000000000",
"instruction_id": "ui-20260424-001",
"instruction_type": "DO_NOT_EXERCISE",
"instrument_id": "0195f6d0-a1b2-7c3d-8e4f-5a6b7c8d9e01",
"quantity": "1",
"rejection_reason": "DO_NOT_EXERCISE must be submitted on the contract's expiration date",
"status": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 400,
"message": "DO_NOT_EXERCISE must be submitted on the contract's expiration date"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd03"
}
}{
"data": [
{
"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; existing_id=019e7415-de03-70c3-8ca1-9fdb72dfdbbc",
"status": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 409,
"message": "Duplicate exercise instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd04"
}
}{
"data": [
{
"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": "Could not process the instruction",
"status": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 500,
"message": "Could not process the instruction"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd05"
}
}{
"data": [
{
"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": "Clearing service unavailable",
"status": "REJECTED",
"symbol": "AAPL 280121C00195000"
}
],
"error": {
"code": 503,
"message": "Clearing service unavailable"
},
"metadata": {
"request_id": "0a5c9ebf-a9a7-4f2d-9c7e-f2b5f0b1bd06"
}
}