Skip to main content

oanda_v20_openapi/models/
order_client_extensions_modify_reject_transaction.rs

1/*
2 * OANDA v20 API
3 *
4 * The full OANDA v20 API Specification. This specification defines how to interact with v20 Accounts, Trades, Orders, Pricing and more.
5 *
6 * The version of the OpenAPI document: 0.2.1
7 * Contact: jmicoud02@gmail.com
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// OrderClientExtensionsModifyRejectTransaction : A OrderClientExtensionsModifyRejectTransaction represents the rejection of the modification of an Order's Client Extensions.
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct OrderClientExtensionsModifyRejectTransaction {
17    /// The Transaction's Identifier.
18    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
19    pub id: Option<i32>,
20    /// A date and time value using either RFC3339 or UNIX time representation. The RFC 3339 representation is a string conforming to https://tools.ietf.org/rfc/rfc3339.txt. The Unix representation is a string representing the number of seconds since the Unix Epoch (January 1st, 1970 at UTC). The value is a fractional number, where the fractional part represents a fraction of a second (up to nine decimal places).
21    #[serde(rename = "time", skip_serializing_if = "Option::is_none")]
22    pub time: Option<String>,
23    /// The ID of the user that initiated the creation of the Transaction.
24    #[serde(rename = "userID", skip_serializing_if = "Option::is_none")]
25    pub user_id: Option<i32>,
26    /// The Account's identifier
27    #[serde(rename = "accountID", skip_serializing_if = "Option::is_none")]
28    pub account_id: Option<String>,
29    /// The ID of the \"batch\" that the Transaction belongs to. Transactions in the same batch are applied to the Account simultaneously.
30    #[serde(rename = "batchID", skip_serializing_if = "Option::is_none")]
31    pub batch_id: Option<i32>,
32    /// The Request ID of the request which generated the transaction.
33    #[serde(rename = "requestID", skip_serializing_if = "Option::is_none")]
34    pub request_id: Option<String>,
35    #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
36    pub r#type: Option<models::TransactionType>,
37    /// The reason that the Reject Transaction was created
38    #[serde(rename = "rejectReason", skip_serializing_if = "Option::is_none")]
39    pub reject_reason: Option<RejectReason>,
40    /// The ID of the Order who's client extensions are to be modified.
41    #[serde(rename = "orderID", skip_serializing_if = "Option::is_none")]
42    pub order_id: Option<i32>,
43    /// The original Client ID of the Order who's client extensions are to be modified.
44    #[serde(rename = "clientOrderID", skip_serializing_if = "Option::is_none")]
45    pub client_order_id: Option<String>,
46    #[serde(rename = "clientExtensionsModify", skip_serializing_if = "Option::is_none")]
47    pub client_extensions_modify: Option<Box<models::ClientExtensions>>,
48    #[serde(rename = "tradeClientExtensionsModify", skip_serializing_if = "Option::is_none")]
49    pub trade_client_extensions_modify: Option<Box<models::ClientExtensions>>,
50}
51
52impl OrderClientExtensionsModifyRejectTransaction {
53    /// A OrderClientExtensionsModifyRejectTransaction represents the rejection of the modification of an Order's Client Extensions.
54    pub fn new() -> OrderClientExtensionsModifyRejectTransaction {
55        OrderClientExtensionsModifyRejectTransaction {
56            id: None,
57            time: None,
58            user_id: None,
59            account_id: None,
60            batch_id: None,
61            request_id: None,
62            r#type: None,
63            reject_reason: None,
64            order_id: None,
65            client_order_id: None,
66            client_extensions_modify: None,
67            trade_client_extensions_modify: None,
68        }
69    }
70}
71/// The reason that the Reject Transaction was created
72#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
73pub enum RejectReason {
74    #[serde(rename = "INTERNAL_SERVER_ERROR")]
75    InternalServerError,
76    #[serde(rename = "INSTRUMENT_PRICE_UNKNOWN")]
77    InstrumentPriceUnknown,
78    #[serde(rename = "ACCOUNT_NOT_ACTIVE")]
79    AccountNotActive,
80    #[serde(rename = "ACCOUNT_LOCKED")]
81    AccountLocked,
82    #[serde(rename = "ACCOUNT_ORDER_CREATION_LOCKED")]
83    AccountOrderCreationLocked,
84    #[serde(rename = "ACCOUNT_CONFIGURATION_LOCKED")]
85    AccountConfigurationLocked,
86    #[serde(rename = "ACCOUNT_DEPOSIT_LOCKED")]
87    AccountDepositLocked,
88    #[serde(rename = "ACCOUNT_WITHDRAWAL_LOCKED")]
89    AccountWithdrawalLocked,
90    #[serde(rename = "ACCOUNT_ORDER_CANCEL_LOCKED")]
91    AccountOrderCancelLocked,
92    #[serde(rename = "INSTRUMENT_NOT_TRADEABLE")]
93    InstrumentNotTradeable,
94    #[serde(rename = "PENDING_ORDERS_ALLOWED_EXCEEDED")]
95    PendingOrdersAllowedExceeded,
96    #[serde(rename = "ORDER_ID_UNSPECIFIED")]
97    OrderIdUnspecified,
98    #[serde(rename = "ORDER_DOESNT_EXIST")]
99    OrderDoesntExist,
100    #[serde(rename = "ORDER_IDENTIFIER_INCONSISTENCY")]
101    OrderIdentifierInconsistency,
102    #[serde(rename = "TRADE_ID_UNSPECIFIED")]
103    TradeIdUnspecified,
104    #[serde(rename = "TRADE_DOESNT_EXIST")]
105    TradeDoesntExist,
106    #[serde(rename = "TRADE_IDENTIFIER_INCONSISTENCY")]
107    TradeIdentifierInconsistency,
108    #[serde(rename = "INSUFFICIENT_MARGIN")]
109    InsufficientMargin,
110    #[serde(rename = "INSTRUMENT_MISSING")]
111    InstrumentMissing,
112    #[serde(rename = "INSTRUMENT_UNKNOWN")]
113    InstrumentUnknown,
114    #[serde(rename = "UNITS_MISSING")]
115    UnitsMissing,
116    #[serde(rename = "UNITS_INVALID")]
117    UnitsInvalid,
118    #[serde(rename = "UNITS_PRECISION_EXCEEDED")]
119    UnitsPrecisionExceeded,
120    #[serde(rename = "UNITS_LIMIT_EXCEEDED")]
121    UnitsLimitExceeded,
122    #[serde(rename = "UNITS_MIMIMUM_NOT_MET")]
123    UnitsMimimumNotMet,
124    #[serde(rename = "PRICE_MISSING")]
125    PriceMissing,
126    #[serde(rename = "PRICE_INVALID")]
127    PriceInvalid,
128    #[serde(rename = "PRICE_PRECISION_EXCEEDED")]
129    PricePrecisionExceeded,
130    #[serde(rename = "PRICE_DISTANCE_MISSING")]
131    PriceDistanceMissing,
132    #[serde(rename = "PRICE_DISTANCE_INVALID")]
133    PriceDistanceInvalid,
134    #[serde(rename = "PRICE_DISTANCE_PRECISION_EXCEEDED")]
135    PriceDistancePrecisionExceeded,
136    #[serde(rename = "PRICE_DISTANCE_MAXIMUM_EXCEEDED")]
137    PriceDistanceMaximumExceeded,
138    #[serde(rename = "PRICE_DISTANCE_MINIMUM_NOT_MET")]
139    PriceDistanceMinimumNotMet,
140    #[serde(rename = "TIME_IN_FORCE_MISSING")]
141    TimeInForceMissing,
142    #[serde(rename = "TIME_IN_FORCE_INVALID")]
143    TimeInForceInvalid,
144    #[serde(rename = "TIME_IN_FORCE_GTD_TIMESTAMP_MISSING")]
145    TimeInForceGtdTimestampMissing,
146    #[serde(rename = "TIME_IN_FORCE_GTD_TIMESTAMP_IN_PAST")]
147    TimeInForceGtdTimestampInPast,
148    #[serde(rename = "PRICE_BOUND_INVALID")]
149    PriceBoundInvalid,
150    #[serde(rename = "PRICE_BOUND_PRECISION_EXCEEDED")]
151    PriceBoundPrecisionExceeded,
152    #[serde(rename = "ORDERS_ON_FILL_DUPLICATE_CLIENT_ORDER_IDS")]
153    OrdersOnFillDuplicateClientOrderIds,
154    #[serde(rename = "TRADE_ON_FILL_CLIENT_EXTENSIONS_NOT_SUPPORTED")]
155    TradeOnFillClientExtensionsNotSupported,
156    #[serde(rename = "CLIENT_ORDER_ID_INVALID")]
157    ClientOrderIdInvalid,
158    #[serde(rename = "CLIENT_ORDER_ID_ALREADY_EXISTS")]
159    ClientOrderIdAlreadyExists,
160    #[serde(rename = "CLIENT_ORDER_TAG_INVALID")]
161    ClientOrderTagInvalid,
162    #[serde(rename = "CLIENT_ORDER_COMMENT_INVALID")]
163    ClientOrderCommentInvalid,
164    #[serde(rename = "CLIENT_TRADE_ID_INVALID")]
165    ClientTradeIdInvalid,
166    #[serde(rename = "CLIENT_TRADE_ID_ALREADY_EXISTS")]
167    ClientTradeIdAlreadyExists,
168    #[serde(rename = "CLIENT_TRADE_TAG_INVALID")]
169    ClientTradeTagInvalid,
170    #[serde(rename = "CLIENT_TRADE_COMMENT_INVALID")]
171    ClientTradeCommentInvalid,
172    #[serde(rename = "ORDER_FILL_POSITION_ACTION_MISSING")]
173    OrderFillPositionActionMissing,
174    #[serde(rename = "ORDER_FILL_POSITION_ACTION_INVALID")]
175    OrderFillPositionActionInvalid,
176    #[serde(rename = "TRIGGER_CONDITION_MISSING")]
177    TriggerConditionMissing,
178    #[serde(rename = "TRIGGER_CONDITION_INVALID")]
179    TriggerConditionInvalid,
180    #[serde(rename = "ORDER_PARTIAL_FILL_OPTION_MISSING")]
181    OrderPartialFillOptionMissing,
182    #[serde(rename = "ORDER_PARTIAL_FILL_OPTION_INVALID")]
183    OrderPartialFillOptionInvalid,
184    #[serde(rename = "INVALID_REISSUE_IMMEDIATE_PARTIAL_FILL")]
185    InvalidReissueImmediatePartialFill,
186    #[serde(rename = "TAKE_PROFIT_ORDER_ALREADY_EXISTS")]
187    TakeProfitOrderAlreadyExists,
188    #[serde(rename = "TAKE_PROFIT_ON_FILL_PRICE_MISSING")]
189    TakeProfitOnFillPriceMissing,
190    #[serde(rename = "TAKE_PROFIT_ON_FILL_PRICE_INVALID")]
191    TakeProfitOnFillPriceInvalid,
192    #[serde(rename = "TAKE_PROFIT_ON_FILL_PRICE_PRECISION_EXCEEDED")]
193    TakeProfitOnFillPricePrecisionExceeded,
194    #[serde(rename = "TAKE_PROFIT_ON_FILL_TIME_IN_FORCE_MISSING")]
195    TakeProfitOnFillTimeInForceMissing,
196    #[serde(rename = "TAKE_PROFIT_ON_FILL_TIME_IN_FORCE_INVALID")]
197    TakeProfitOnFillTimeInForceInvalid,
198    #[serde(rename = "TAKE_PROFIT_ON_FILL_GTD_TIMESTAMP_MISSING")]
199    TakeProfitOnFillGtdTimestampMissing,
200    #[serde(rename = "TAKE_PROFIT_ON_FILL_GTD_TIMESTAMP_IN_PAST")]
201    TakeProfitOnFillGtdTimestampInPast,
202    #[serde(rename = "TAKE_PROFIT_ON_FILL_CLIENT_ORDER_ID_INVALID")]
203    TakeProfitOnFillClientOrderIdInvalid,
204    #[serde(rename = "TAKE_PROFIT_ON_FILL_CLIENT_ORDER_TAG_INVALID")]
205    TakeProfitOnFillClientOrderTagInvalid,
206    #[serde(rename = "TAKE_PROFIT_ON_FILL_CLIENT_ORDER_COMMENT_INVALID")]
207    TakeProfitOnFillClientOrderCommentInvalid,
208    #[serde(rename = "TAKE_PROFIT_ON_FILL_TRIGGER_CONDITION_MISSING")]
209    TakeProfitOnFillTriggerConditionMissing,
210    #[serde(rename = "TAKE_PROFIT_ON_FILL_TRIGGER_CONDITION_INVALID")]
211    TakeProfitOnFillTriggerConditionInvalid,
212    #[serde(rename = "STOP_LOSS_ORDER_ALREADY_EXISTS")]
213    StopLossOrderAlreadyExists,
214    #[serde(rename = "STOP_LOSS_ORDER_GUARANTEED_REQUIRED")]
215    StopLossOrderGuaranteedRequired,
216    #[serde(rename = "STOP_LOSS_ORDER_GUARANTEED_PRICE_WITHIN_SPREAD")]
217    StopLossOrderGuaranteedPriceWithinSpread,
218    #[serde(rename = "STOP_LOSS_ORDER_GUARANTEED_NOT_ALLOWED")]
219    StopLossOrderGuaranteedNotAllowed,
220    #[serde(rename = "STOP_LOSS_ORDER_GUARANTEED_HALTED_CREATE_VIOLATION")]
221    StopLossOrderGuaranteedHaltedCreateViolation,
222    #[serde(rename = "STOP_LOSS_ORDER_GUARANTEED_HALTED_TIGHTEN_VIOLATION")]
223    StopLossOrderGuaranteedHaltedTightenViolation,
224    #[serde(rename = "STOP_LOSS_ORDER_GUARANTEED_HEDGING_NOT_ALLOWED")]
225    StopLossOrderGuaranteedHedgingNotAllowed,
226    #[serde(rename = "STOP_LOSS_ORDER_GUARANTEED_MINIMUM_DISTANCE_NOT_MET")]
227    StopLossOrderGuaranteedMinimumDistanceNotMet,
228    #[serde(rename = "STOP_LOSS_ORDER_NOT_CANCELABLE")]
229    StopLossOrderNotCancelable,
230    #[serde(rename = "STOP_LOSS_ORDER_NOT_REPLACEABLE")]
231    StopLossOrderNotReplaceable,
232    #[serde(rename = "STOP_LOSS_ORDER_GUARANTEED_LEVEL_RESTRICTION_EXCEEDED")]
233    StopLossOrderGuaranteedLevelRestrictionExceeded,
234    #[serde(rename = "STOP_LOSS_ORDER_PRICE_AND_DISTANCE_BOTH_SPECIFIED")]
235    StopLossOrderPriceAndDistanceBothSpecified,
236    #[serde(rename = "STOP_LOSS_ORDER_PRICE_AND_DISTANCE_BOTH_MISSING")]
237    StopLossOrderPriceAndDistanceBothMissing,
238    #[serde(rename = "STOP_LOSS_ON_FILL_REQUIRED_FOR_PENDING_ORDER")]
239    StopLossOnFillRequiredForPendingOrder,
240    #[serde(rename = "STOP_LOSS_ON_FILL_GUARANTEED_NOT_ALLOWED")]
241    StopLossOnFillGuaranteedNotAllowed,
242    #[serde(rename = "STOP_LOSS_ON_FILL_GUARANTEED_REQUIRED")]
243    StopLossOnFillGuaranteedRequired,
244    #[serde(rename = "STOP_LOSS_ON_FILL_PRICE_MISSING")]
245    StopLossOnFillPriceMissing,
246    #[serde(rename = "STOP_LOSS_ON_FILL_PRICE_INVALID")]
247    StopLossOnFillPriceInvalid,
248    #[serde(rename = "STOP_LOSS_ON_FILL_PRICE_PRECISION_EXCEEDED")]
249    StopLossOnFillPricePrecisionExceeded,
250    #[serde(rename = "STOP_LOSS_ON_FILL_GUARANTEED_MINIMUM_DISTANCE_NOT_MET")]
251    StopLossOnFillGuaranteedMinimumDistanceNotMet,
252    #[serde(rename = "STOP_LOSS_ON_FILL_GUARANTEED_LEVEL_RESTRICTION_EXCEEDED")]
253    StopLossOnFillGuaranteedLevelRestrictionExceeded,
254    #[serde(rename = "STOP_LOSS_ON_FILL_DISTANCE_INVALID")]
255    StopLossOnFillDistanceInvalid,
256    #[serde(rename = "STOP_LOSS_ON_FILL_PRICE_DISTANCE_MAXIMUM_EXCEEDED")]
257    StopLossOnFillPriceDistanceMaximumExceeded,
258    #[serde(rename = "STOP_LOSS_ON_FILL_DISTANCE_PRECISION_EXCEEDED")]
259    StopLossOnFillDistancePrecisionExceeded,
260    #[serde(rename = "STOP_LOSS_ON_FILL_PRICE_AND_DISTANCE_BOTH_SPECIFIED")]
261    StopLossOnFillPriceAndDistanceBothSpecified,
262    #[serde(rename = "STOP_LOSS_ON_FILL_PRICE_AND_DISTANCE_BOTH_MISSING")]
263    StopLossOnFillPriceAndDistanceBothMissing,
264    #[serde(rename = "STOP_LOSS_ON_FILL_TIME_IN_FORCE_MISSING")]
265    StopLossOnFillTimeInForceMissing,
266    #[serde(rename = "STOP_LOSS_ON_FILL_TIME_IN_FORCE_INVALID")]
267    StopLossOnFillTimeInForceInvalid,
268    #[serde(rename = "STOP_LOSS_ON_FILL_GTD_TIMESTAMP_MISSING")]
269    StopLossOnFillGtdTimestampMissing,
270    #[serde(rename = "STOP_LOSS_ON_FILL_GTD_TIMESTAMP_IN_PAST")]
271    StopLossOnFillGtdTimestampInPast,
272    #[serde(rename = "STOP_LOSS_ON_FILL_CLIENT_ORDER_ID_INVALID")]
273    StopLossOnFillClientOrderIdInvalid,
274    #[serde(rename = "STOP_LOSS_ON_FILL_CLIENT_ORDER_TAG_INVALID")]
275    StopLossOnFillClientOrderTagInvalid,
276    #[serde(rename = "STOP_LOSS_ON_FILL_CLIENT_ORDER_COMMENT_INVALID")]
277    StopLossOnFillClientOrderCommentInvalid,
278    #[serde(rename = "STOP_LOSS_ON_FILL_TRIGGER_CONDITION_MISSING")]
279    StopLossOnFillTriggerConditionMissing,
280    #[serde(rename = "STOP_LOSS_ON_FILL_TRIGGER_CONDITION_INVALID")]
281    StopLossOnFillTriggerConditionInvalid,
282    #[serde(rename = "TRAILING_STOP_LOSS_ORDER_ALREADY_EXISTS")]
283    TrailingStopLossOrderAlreadyExists,
284    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_PRICE_DISTANCE_MISSING")]
285    TrailingStopLossOnFillPriceDistanceMissing,
286    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_PRICE_DISTANCE_INVALID")]
287    TrailingStopLossOnFillPriceDistanceInvalid,
288    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_PRICE_DISTANCE_PRECISION_EXCEEDED")]
289    TrailingStopLossOnFillPriceDistancePrecisionExceeded,
290    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_PRICE_DISTANCE_MAXIMUM_EXCEEDED")]
291    TrailingStopLossOnFillPriceDistanceMaximumExceeded,
292    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_PRICE_DISTANCE_MINIMUM_NOT_MET")]
293    TrailingStopLossOnFillPriceDistanceMinimumNotMet,
294    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_TIME_IN_FORCE_MISSING")]
295    TrailingStopLossOnFillTimeInForceMissing,
296    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_TIME_IN_FORCE_INVALID")]
297    TrailingStopLossOnFillTimeInForceInvalid,
298    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_GTD_TIMESTAMP_MISSING")]
299    TrailingStopLossOnFillGtdTimestampMissing,
300    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_GTD_TIMESTAMP_IN_PAST")]
301    TrailingStopLossOnFillGtdTimestampInPast,
302    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_CLIENT_ORDER_ID_INVALID")]
303    TrailingStopLossOnFillClientOrderIdInvalid,
304    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_CLIENT_ORDER_TAG_INVALID")]
305    TrailingStopLossOnFillClientOrderTagInvalid,
306    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_CLIENT_ORDER_COMMENT_INVALID")]
307    TrailingStopLossOnFillClientOrderCommentInvalid,
308    #[serde(rename = "TRAILING_STOP_LOSS_ORDERS_NOT_SUPPORTED")]
309    TrailingStopLossOrdersNotSupported,
310    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_TRIGGER_CONDITION_MISSING")]
311    TrailingStopLossOnFillTriggerConditionMissing,
312    #[serde(rename = "TRAILING_STOP_LOSS_ON_FILL_TRIGGER_CONDITION_INVALID")]
313    TrailingStopLossOnFillTriggerConditionInvalid,
314    #[serde(rename = "CLOSE_TRADE_TYPE_MISSING")]
315    CloseTradeTypeMissing,
316    #[serde(rename = "CLOSE_TRADE_PARTIAL_UNITS_MISSING")]
317    CloseTradePartialUnitsMissing,
318    #[serde(rename = "CLOSE_TRADE_UNITS_EXCEED_TRADE_SIZE")]
319    CloseTradeUnitsExceedTradeSize,
320    #[serde(rename = "CLOSEOUT_POSITION_DOESNT_EXIST")]
321    CloseoutPositionDoesntExist,
322    #[serde(rename = "CLOSEOUT_POSITION_INCOMPLETE_SPECIFICATION")]
323    CloseoutPositionIncompleteSpecification,
324    #[serde(rename = "CLOSEOUT_POSITION_UNITS_EXCEED_POSITION_SIZE")]
325    CloseoutPositionUnitsExceedPositionSize,
326    #[serde(rename = "CLOSEOUT_POSITION_REJECT")]
327    CloseoutPositionReject,
328    #[serde(rename = "CLOSEOUT_POSITION_PARTIAL_UNITS_MISSING")]
329    CloseoutPositionPartialUnitsMissing,
330    #[serde(rename = "MARKUP_GROUP_ID_INVALID")]
331    MarkupGroupIdInvalid,
332    #[serde(rename = "POSITION_AGGREGATION_MODE_INVALID")]
333    PositionAggregationModeInvalid,
334    #[serde(rename = "ADMIN_CONFIGURE_DATA_MISSING")]
335    AdminConfigureDataMissing,
336    #[serde(rename = "MARGIN_RATE_INVALID")]
337    MarginRateInvalid,
338    #[serde(rename = "MARGIN_RATE_WOULD_TRIGGER_CLOSEOUT")]
339    MarginRateWouldTriggerCloseout,
340    #[serde(rename = "ALIAS_INVALID")]
341    AliasInvalid,
342    #[serde(rename = "CLIENT_CONFIGURE_DATA_MISSING")]
343    ClientConfigureDataMissing,
344    #[serde(rename = "MARGIN_RATE_WOULD_TRIGGER_MARGIN_CALL")]
345    MarginRateWouldTriggerMarginCall,
346    #[serde(rename = "AMOUNT_INVALID")]
347    AmountInvalid,
348    #[serde(rename = "INSUFFICIENT_FUNDS")]
349    InsufficientFunds,
350    #[serde(rename = "AMOUNT_MISSING")]
351    AmountMissing,
352    #[serde(rename = "FUNDING_REASON_MISSING")]
353    FundingReasonMissing,
354    #[serde(rename = "CLIENT_EXTENSIONS_DATA_MISSING")]
355    ClientExtensionsDataMissing,
356    #[serde(rename = "REPLACING_ORDER_INVALID")]
357    ReplacingOrderInvalid,
358    #[serde(rename = "REPLACING_TRADE_ID_INVALID")]
359    ReplacingTradeIdInvalid,
360}
361
362impl Default for RejectReason {
363    fn default() -> RejectReason {
364        Self::InternalServerError
365    }
366}
367