Docs Rest API vs SOAP 10/22/2019 v1.4 Revision Version Modified Date Revision Details V1.0 05/06/2019 Initial Version V1.1 06/05/2019 Error in agreement type table corrected V1.2 08/01/2019 Clarification surrounding population of BillWho V1.3 10/01/2019 Enumeration Types updated for Execution Type V1.4 10/21/2019 Included comprehensive SOAP to Rest enum value changes
17
Embed
Docs Rest API vs SOAP - FIA TECH · Rest API Field SOAP API Field Description RateScheduleId Unique identifier for rate schedule Id Exchanges List of Exchanges where this Rate Schedule
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Docs Rest API vs SOAP 10/22/2019 v1.4
Revision Version Modified Date Revision Details
V1.0 05/06/2019 Initial Version
V1.1 06/05/2019 Error in agreement type table corrected V1.2 08/01/2019 Clarification surrounding population of
BillWho V1.3 10/01/2019 Enumeration Types updated for
Execution Type V1.4 10/21/2019 Included comprehensive SOAP to Rest
a. Upload Rate Schedule .................................................................................................................... 12
b. Delete Rate Schedule..................................................................................................................... 13
c. Download Rate Schedule ............................................................................................................... 13
d. Get Updated Rate Schedules ......................................................................................................... 13
10. Reference Data ............................................................................................................................. 14
a. Get Parties..................................................................................................................................... 14
b. Get Exchanges ............................................................................................................................... 15
c. Get Exchange Firms ....................................................................................................................... 15
d. Get Exchange Product Groups ....................................................................................................... 15
e. Get Enumerations.......................................................................................................................... 16
Accelerate DOCS Quick Start Guide
2
1. Introduction
This guide provides information about the differences between the Docs Rest and SOAP API. This should
not be treated as the definitive guide to differences, rather a summary of the most important ones. Firms
transitioning from the SOAP to the Rest API should perform their own testing on order to discern what
changes they may need to incorporate to accommodate the Rest API. Note that fields that appeared in
the SOAP API that do not appear in the Rest API are not mentioned here.
To provide a holistic view of the Rest API, this document contains a large number of fields and values that
remain unchanged between the two APIs. They appear in this document for reference purposes. For
additional information about fields and calls available in the Rest API, please refer to the Docs Rest API
Technical Specifications.
2. Master list of API Response Fields
Most of the API calls have some common request/response fields. In this section, the master list of these
fields are listed with a brief description. Note that these fields are listed here in alphabetical order, not
the order they may appear in the API response.
Bands
Rest API Field SOAP API Field Description
ApplyTo Apply Indicates whether this highest band rate should be applied to all contracts, or if all preceding bands should be used in calculation. One of the possible values from RateApplyTo enumeration
BandNum Sequence number of this Band
BandRateType One of the possible values from RateType for this band BandValueType One of the possible values from BandValueType
End The end value for this band based on BandValueType
Rate The rate applied when this band is matched
Start The start value for this Band based on BandValueType
ClearingAccount
Rest API Field SOAP API Field Description
AccountId Clearing account ID ClearingAccountType N/A Type of clearing account
Description Description of the account
EffectiveDate Effective Date for clearing account (this is a business date) ExpirationDate Expiration Date for clearing account (this is a business date)
Exchange
SOAP API Field Rest API Field Description
Accelerate DOCS Quick Start Guide
3
DirectBill ExchangeDirectBill Indicates if this exchange is to be directly billed e.g. YES/NO
ExchangeCode Exchange Indicates code for the exchange
Rates Rate List of Rates defined for this exchange
CreatedOn Indicates created on datetimestamp UpdatedOn Indicates updated on datetimestamp
ExecutingAccount
Field Description
AccountId Executing account Id Description Description of the account
EffectiveDate Effective Date for executing account (this is a business date)
ExpirationDate Expiration Date for executing account (this is a business date)
Party
Rest API Field SOAP API Field Description
AgreementPartyRole Type The role for this party on the agreement. (This field is returned only if the Party is being returned as a result of a call to the Agreement API)
InstitutionId InstitutionId of the party. If the party is not a sub-party, this will be identical to the ParentId
Name Name of the party
ParentId Parent PartyId of the party. If the party is not a sub-party, this will be identical to the InstitutionId
PartyFirms ExchangeFirmCode List of Party Firms in associated to the party PartyId Code Unique identifier for the party
CreatedOn Date when the party was created
UpdatedOn Date when the party was last updated
PartyFirm
Field Description
ExchangeCode Exchange Code the FirmCode applies for
FirmCode Exchange Firm Code for the Party PrimaryFlag Indicates if the Exchange Firm Code is primary (Y/N)
CreatedOn Date when the partyfirm was created
UpdatedOn Date when the partyfirm was last updated
Product
Rest API Field SOAP API Field Description ProductCode Product Code
ProductName N/A Product Name
Accelerate DOCS Quick Start Guide
4
ProductType Type of instrument
CreatedOn Date when the product was created
UpdatedOn Date when the product was last updated
ProductGroup
Field Description ProductGroupCode Product group code for a Products
Products List of Products under this product group
Rate
Rest API Field SOAP API Field Description AddOnAmount Indicates Add On amount.
AddOnApply AOApply Indicates Add On Apply Type (Per Contract or Per Tradeype)
Amount Indicates Rate Amount. Bands List of Bands involved in the Rates
DefaultExecutionType Indicates if the Rate associated with the ExecutionType is default rate (Y/N)
ExecutionType Indicates which execution types the corresponding rate applies to. 1
ExecutionTypeName Indicates execution type name (text after “-“ from the execution type, if any)
Max Maximum amount for the Rate.
Min Minimum amount for the Rate. MinMaxApply MMApply Indicates Min Max Apply Type. One of the possible values
from RateApply enumeration. MinMaxDefine MMDefine Indicates Min Max Define type. Type of value in the Min
and Max fields ProductCode Indicates product code
ProductGroupCode Indicates product group code
ProductType Indicates product type Rank Indicates order in which to process the rate within the rate
schedule for trade matching RateCurrency 3-digit standard ISO currency code (for e.g. EUR, USD etc)
RateType Indicates the type of this Rate
SpreadType Spread Indicates the Spread Type of this Rate Tiers List of Tiers involved in the Rates. Returned only if rate
type is Vol Disc. If it’s not Vol Disc, this is not returned
1 Note that the Rest API will not pass ‘blank’ execution methods associated with the ‘default’ value of “Y”. Instead the default rate type should be determined using the “DefaultExecutionType” flag.
Accelerate DOCS Quick Start Guide
5
TradeType Indicate the Trade Type of this Rate
RateSchedule
Rest API Field SOAP API Field Description RateScheduleId Unique identifier for rate schedule Id
Exchanges List of Exchanges where this Rate Schedule is valid in the Rate Schedule
ExecutingAccounts List of Executing Accounts available on this Rrate Sschedule
FileName N/A Name of the Rate Schedule
Tier
Rest API Field SOAP API Field Description
Amount TierAmount Indicates Rate Amount for this tier
ApplyTo Indicates whether the tier applies to all activity for the period or Next activity for the period. One of the possible values from RateApplyTo enumeration
Period For Vol Disc rates, the period for which the tier applies.
StartType For Vol Disc rates, one of the StartType of tier for the rate. StartTypeValue For Vol Disc rates, the start number or amount of each tier
3. Dates
Business Dates
Business Dates (date only without a time component) on all the responses are:
EffectiveDate
ExpirationDate
TerminationDate
DateTimeStamps
In SOAP API all Date Time Stamps were provided in NYC time, in the Rest API, all dates are expressed
in UTC. All dates except those mentioned above are Date Time Stamps.
Accelerate DOCS Quick Start Guide
6
4. Enumeration types with values different from SOAP API
All of the below enumerations have differences in the Rest vs SOAP API values. If a value is not included
in the SOAP API Value column, it means that the value is unchanged in the Rest API, or that the value
was not applicable in the SOAP API. Note that the SOAP API inconsistently but frequently returned an
empty space to represent a missing value in a field. This behavior has been removed.
LD OtherProvidedScreen D E ClientProvidedPlatformControlledByFcm E
F ClientProvidedPlatformDirectToExchange F
LG FcmApiOrFix G LH AlgoEngine H
J PriceAtExecution J
C VendorProvidedPlatformBilledByExecutingBroker
C
D OtherIncludingOtherProvidedScreen D H PremiumAlgorithmicTradingProviderBilled
ByExecutingBroker H
Accelerate DOCS Quick Start Guide
8
G SponsoredAccessViaExchangeApiOrFixProvidedByExecutingBroker
G
K K
M M
N N
P P Q Q
R R
S S T T
U U
V V 2 2
3 3
4 4 5 5
6 6
7 7 8 8
9 9
MinMaxDefine Rest API Value SOAP API Value Amount
PercentPremium %Premium
PercentNotional %Notional
BandValueType Rest API Value SOAP API Value
BPS
Notional NumberOfContracts Number of Contracts
Premium
TradePrice Trade Price
PartyRole Trader
ExecutionBroker
ClearingBroker Customer
RateType Rest API Value SOAP API Value
PerContract Per Contract PerTrade Per Trade
VolDisc Vol Disc
Accelerate DOCS Quick Start Guide
9
PercentPremium %Premium
PercentNotional %Notional
BPS
MWH BTU
MBTU
MMBTU TONNES
Barrels
MetricTons Metric Tons Vega
Band
SpreadType Rest API Value SOAP API Value Spread S
PitSpread 6
Roll RO Hedge HE
Fly F
Straddle STD Strangle STG
Switch SW
TAS T Condor CO
StartType Rest API Value SOAP API Value
Amount Number
PremiumPrice
NotionalPrice NumberOfContracts Number of Contracts
NumberOfTrades Number of Trades
TradeType Rest API Value SOAP API Value BlockTrade B
ExchangeForPhysical E
ExchangeForRisk N ExchangeForSwap T
BasisTrade BT
PerAllocation PA
Accelerate DOCS Quick Start Guide
10
RateApply Rest API Value SOAP API Value
PerContract Per Contract
PerTrade Per Trade
RateApplyTo Rest API Value SOAP API Value
UseOnlyOne Use Only One
UseAllThatApply Use All That Apply
5. All other enumeration types
Period Daily
Monthly
ProductType COMBO
Forwrd
FUT Future
Mixed
OFF OOC
OOF
OPT
Option PHY
Spot
Swap Swaps
6. Agreement a. Get Agreement Details
The Agreement Details API allows you to request agreement details based on API user’s party
entitlements. This API returns agreement details for all agreement states except “Deleted”.
Request
GET /DocsApi/agreement/details?agreementId=13423
Field Description
AgreementId Unique identifier for the Agreement to the details for.
Accelerate DOCS Quick Start Guide
11
Response
Rest API Field SOAP API Field Description AgreementId Unique identifier for an Agreement
AgreementTransitionedFrom N/A The agreement Id from which it was cloned (may be empty if this agreement was not part of a give-up agreement transition
AgreementTransitionedTo N/A The agreement Id to which it was cloned (may be empty if this agreement was not part of a give-up agreement transition
AgreementType Type of the agreement BillWho2 Party to which you can bill for this agreement
(except Executing Broker). ClearingAccounts List of ClearingAccounts in the agreement
CreatedOn N/A Date Agreement initiated or created in UTC
CustomerReference Name of Customer party for which the details are being downloaded. If there is no customer party on the agreement, then the Trader party name is returned
EffectiveDate Date on which Agreement becomes effective (this is a business date)
ExecutedDate ApprovalDate Executed date time stamp of the agreement in UTC
FollowingAgreementId Agreement Id to which it was amended (may be empty if this agreement was not amended)
GroupId Unique identifier for the agreements which are related
InitiatedOn CreationDate Initiated date time stamp in UTC
LastModified UpdateDate Last modified (touched) date time stamp in UTC Parties List of Parties involved in the agreement
PriorAgreementId Agreement Id from which it was amended (may be empty if this agreement is not an amendment)
ProfitCenter Profit Center for this agreement. This is a client defined value, it is not validated by Docs.
RateSchedules3 List of RateSchedules in the agreement
State Status State of the agreement SuppDocCount Count of supplemental docs on the agreement
TerminationDate Date on which agreement becomes terminated (this is a business date)
2 The BillWho value will only populate over the Rest API once the Rate Schedule workstream is saved, regardless whether or not the default value is selected. This is a difference from the SOAP API 3 Note that the Rest API will not pass ‘blank’ execution methods associated with the ‘default’ value of “Y”. Instead the default rate type should be determined using the “DefaultExecutionType” flag.
Accelerate DOCS Quick Start Guide
12
b. Get Updated Agreements
The Agreement Updates API allows you to retrieve agreement IDs based on API user’s party entitlements.
The maximum duration allowed between the From and To date is 1095 days (~ 3 years).