Skip to end of banner
Go to start of banner

Margin Service API - Transaction - Update

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

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>
  • No labels