Margin Service API - Transaction - Update

The update transaction request updates attributes of an existing transaction in the CME CORE database.

Description

The request allows the Client to update an already added transaction to CME CORE (Add Transaction). Multiple transactions can be updates in a single request using this request where transactions can be created, updated and deleted but to a single portfolio. The Client must specify the unique CME CORE-assigned portfolio identifier. For every transaction created the required attributes must be specified. For every transaction being updated the required attributes along with the system internal identifier must be specified. And for every transaction deleted, the internal identifier of the transaction must be specified. The server will return a request identifier which can be used for tracking status. 

Multiple transactions can be updated within one message. If processingMode="COMPLETE" then all transactions must pass validation, or none will be updated. If processingMode="PARTIAL" then transactions that are invalid will not be updated, but any valid transactions will be unaffected. Should this happen, the response will have /transactionRpt@status="SUCCESS_WITH_ERRORS" and /transactionRpt/transaction/error@code and /transactionRpt/transaction/error@msg present for each transaction that failed.

EntityTransaction
ActionUpdate
URL/transactions/{id}
HTTP MethodPUT
Parameter InputNo
XML InputYes
Multiple OutputNo
SynchronousYes

Request

XPathNameTypeRequiredNotes
/transactionReq@reqUserId Requesting User IDStringNo 
/transactionReq@processingModeProcessing ModeProcessing ModeNo 
/transactionReq/transaction@idIDStringYes 
/transactionReq/transaction@portfolioIdPortfolio IDString Yes 
/transactionReq/transaction@typeTransaction TypeTransaction TypeYes 
/transactionReq/transaction/payload@encodingPayload EncodingTransaction EncodingYes 
/transactionReq/transaction/payload@formatPayload FormatTransaction FormatYes 
/transactionReq/transaction/payload/stringString PayloadString Yes 

Response

XPathNameTypeRequiredNotes
/transactionRpt@statusStatusSync Report StatusYes 
/transactionRpt/error@codeError CodeString No 
/transactionRpt/error@msgError MessageString No 
/transactionRpt/transaction@createTimeCreate TimeDate/TimeYes 
/transactionRpt/transaction@idIDString Yes 
/transactionRpt/transaction@portfolioIdPortfolio IDString Yes 
/transactionRpt/transaction@statusEntity StatusEntity StatusYes 
/transactionRpt/transaction@typeTransaction TypeTransaction TypeYes 
/transactionRpt/transaction@updateTimeUpdate TimeDate/Time Yes 
/transactionRpt/transaction/error@codeError CodeString
No 
/transactionRpt/transaction/error@msgError MessageString
No 
/transactionRpt/transaction/payload@encodingPayload EncodingTransaction EncodingYes 
/transactionRpt/transaction/payload@formatPayload FormatTransaction FormatYes 
/transactionRpt/transaction/payload/stringString PayloadString Yes 

Errors

CodeDescription
403Returned if the user does not have permission to access the specified transaction.
404Returned if the requested transaction could not be found.
500The server was not able to process the request. More information (if available) will be provided in the error message.

Examples

Basic
Request
PUT /transactions/{transaction id}
<transactionReq>
  <transaction id="123" portfolioId="1234" type="TRADE">
    <payload encoding="STRING" format="FIXML">
      <string><![CDATA[<FIXML><!-- TrdCaptRpt goes here --></FIXML>]]></string>
    </payload>
  </transaction>
</transactionReq>
Response
<transactionRpt>
  <transaction id="123" portfolioId="1234" type="TRADE" createTime="2013-01-09 10:01:02" updateTime="2013-01-09 10:02:10" status="UPDATED">
    <payload encoding="STRING" format="FIXML">
      <string><![CDATA[<FIXML><!-- TrdCaptRpt goes here --></FIXML>]]></string>
    </payload>
  </transaction>
</trsansactionRpt>



How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.