Standard Bond¶
The standard bond endpoints provide a way to read and create deal data using a standard corporate bond deal specific view. These endpoints can be are used to provide full workflow functionality for standard bond deal types, including viewing all deals, searching for specific deals, as well as creating and maintaining full deal data.
API Endpoints¶
The full list of available API endpoints is show below, with links to the detailed documentation for each. For a concise, structured definition please reference the Swagger/Open API specification.
Name |
Method |
Url |
Description |
Get |
/v1/deals/fixed-income/standard-bond |
Get all standard bond deals with optional search criteria |
|
Get |
/v1/deals/fixed-income/standard-bond/{id} |
Get a specific standard bond deal |
|
Post |
/v1/deals/fixed-income/standard-bond |
Create a standard bond deal |
|
Put |
/v1/deals/fixed-income/standard-bond/{id} |
Update a specific standard bond deal |
|
Put |
/v1/deals/fixed-income/standard-bond |
Update a specific standard bond deal by source application id |
|
Patch |
/v1/deals/fixed-income/standard-bond/{id} |
Update a subset of the attributes of an existing Deal |
|
Post |
/v1/tranches/fixed-income/standard-bond |
Create a tranche for a standard bond deal |
Get Deals¶
The get deals endpoint provides a way of accessing a collection of deal objects based on the input parameters.
Parameters¶
The parameters that this endpoint accepts are shown in the table below, with a description and default values identified.
Name |
Type |
Format |
Description |
Default |
page |
integer |
Querystring |
See Pagination |
1 |
pageSize |
integer |
Querystring |
See Pagination |
250 |
sourceId |
string |
Querystring |
A comma delimited list of source ids to search for |
null |
criteria |
array[object] |
Querystring |
See Search Criteria |
null |
accessType |
string |
Querystring |
A comma delimited list of Access Type. |
Private |
sortField |
string |
Querystring |
See Sort |
|
sortDirection |
string |
Querystring |
See Sort |
Asc |
Response¶
The endpoint returns a json payload containing an paginated array of Deal Object. The pagination is in the standard CAS format as described in Pagination.
Get Deal¶
The get deal endpoint provides a way of accessing a specific deal object by id.
Authorization¶
In order to access the deal information, it is required to have the deals-read scope in the access token.
Parameters¶
The parameters that this endpoint accepts are shown in the table below, with a description and default values identified.
Name |
Type |
Format |
Description |
Default |
id |
UUID |
URL path |
The unique CAS id of the deal to retrieve |
Response¶
The endpoint returns a json payload containing a Deal Object.
Create Deal¶
The create deal endpoint provides a way of creating a deal object in the CAS system.
Authorization¶
In order to create the deal information, it is required to have the deals-write scope in the access token.
Response¶
The endpoint returns a json payload containing aDeal Object reflecting the object that was just created.
Update Deal¶
The update deal endpoint provides a way of updating a specific deal object by id.
Authorization¶
In order to update the deal, it is required to have the deals-write scope in the access token.
Parameters¶
The parameters that this endpoint accepts are shown in the table below, with a description and default values identified.
Name |
Type |
Format |
Description |
Default |
id |
UUID |
URL path |
The unique CAS id of the deal to update |
Response¶
The endpoint returns an http response code indicating the success or failure of the action.
Update Deal by Source Id¶
This update deal endpoint provides a way of updating a specific deal object by source application id. It is for use when the CAS unique id is not known, such as when being invoked by a source application.
Authorization¶
In order to update the deal, it is required to have the deals-write scope in the access token.
Parameters¶
The parameters that this endpoint accepts are shown in the table below, with a description and default values identified.
Name |
Type |
Format |
Description |
Default |
sourceId |
string |
Querystring |
A source id to update |
null |
Response¶
The endpoint returns an http response code indicating the success or failure of the action.
Patch Deal¶
The patch deal endpoint provides a way of updating specific fields of an existing Deals object.
Authorization¶
In order to access the Deals information, it is required to have the deals-write scope in the access token.
Parameters¶
The parameter that this endpoint accepts is a list of fields for the Deals object to be updated.
[
{
"value": {},
"path": "string",
"op": "string",
"from": "string"
}
]
Response¶
The endpoint returns a JSON payload containing the new, updated Deal Object if successful.
Create Tranche For Deal¶
The create tranche endpoint provides a way of creating one or more tranche objects in the CAS system for an existing standard bond deal object in the CAS system.
Authorization¶
In order to create the tranche information, it is required to have the deals-write scope in the access token.
Parameters¶
N/A
Response¶
The endpoint returns a json payload containing one or more Tranche Objects reflecting the objects that were just created.
Schema¶
The standard bond deal object builds on the fixed income deal schema described in Fixed Income and extends it with properties that apply to all standard bond deals only. This deal object structure is shown below, and underneath the json example, each element is described in detail. It is important to note that only the additional fields not in the common fixed income model are shown below, to avoid duplication.
Example json¶
{
"tranches":
[
{
"syndicate": [
{
"name": "string",
"firmId": 0,
"shortName": "string",
"role": "GlobalCoordinator",
"pmId": "string",
"isBookBuilder": true
}
],
"pricingReference": {
"referenceType": "Security",
"referenceSecurity": {
"name": "string",
"identificationCodes": [
{
"type": "Symbol",
"code": "string"
}
],
"settlementPrices": [
{
"settlementType": "Matched",
"offset": 0,
"price": 0
}
],
"cashRatio": 0,
"durationRatio": 0,
"settlementTypeDefault": "Matched",
"settlementOffsetDefault": 0,
"parValue":0,
"coupon": {
"type": "Fixed",
"fixedRate": 0,
"floatingRateIndex": "string",
"spread": "string",
"frequency": "Annually",
"dayCount": "string",
"accruedInterest": "2019-08-25T11:52:10.992Z"
},
"currency": "string",
"maturityDate": "2019-08-05T09:32:51.932Z",
"spread": "string",
"benchmarkSpot" : "string",
"benchmarkYield" : "9999999999999.99999999"
},
"reference": "string"
},
"benchmarkBond": {
"name": "string",
"identificationCodes": [
{
"type": "Symbol",
"code": "string"
}
],
"settlementPrices": [
{
"settlementType": "Matched",
"offset": 0,
"price": 0
}
],
"cashRatio": 0,
"durationRatio": 0,
"settlementTypeDefault": "Matched",
"settlementOffsetDefault": 0,
"parValue":0,
"coupon": {
"type": "Fixed",
"fixedRate": 0,
"floatingRateIndex": "string",
"spread": "string",
"frequency": "Annually",
"dayCount": "string",
"accruedInterest": "2019-08-25T11:52:10.992Z"
},
"currency": "string",
"maturityDate": "2019-08-05T09:32:51.932Z",
"spread": "string",
"benchmarkSpot" : "string",
"benchmarkYield" : "9999999999999.99999999"
},
"hedges": [
{
"name": "string",
"identificationCodes": [
{
"type": "Symbol",
"code": "string"
}
],
"settlementPrices": [
{
"settlementType": "Matched",
"offset": 0,
"price": 0
}
],
"cashRatio": 0,
"durationRatio": 0,
"settlementTypeDefault": "Matched",
"settlementOffsetDefault": 0,
"parValue":0,
"coupon": {
"type": "Fixed",
"fixedRate": 0,
"floatingRateIndex": "string",
"spread": "string",
"frequency": "Annually",
"dayCount": "string",
"accruedInterest": "2019-08-25T11:52:10.992Z"
},
"currency": "string",
"maturityDate": "2019-08-05T09:32:51.932Z",
"spread": "string",
"benchmarkSpot" : "string",
"benchmarkYield" : "9999999999999.99999999"
}
],
"switches": [
{
"name": "string",
"identificationCodes": [
{
"type": "Symbol",
"code": "string"
}
],
"settlementPrices": [
{
"settlementType": "Matched",
"offset": 0,
"price": 0
}
],
"cashRatio": 0,
"durationRatio": 0,
"settlementTypeDefault": "Matched",
"settlementOffsetDefault": 0,
"parValue":0,
"coupon": {
"type": "Fixed",
"fixedRate": 0,
"floatingRateIndex": "string",
"spread": "string",
"frequency": "Annually",
"dayCount": "string",
"accruedInterest": "2019-08-25T11:52:10.992Z"
},
"currency": "string",
"maturityDate": "2019-08-05T09:32:51.932Z",
"spread": "string",
"benchmarkSpot" : "string",
"benchmarkYield" : "9999999999999.99999999"
}
],
"announcementDate": "2019-08-25T11:52:10.992Z",
"tradeDate": "2019-08-25T11:52:10.992Z",
"pricingDate": "2019-08-25T11:52:10.992Z",
"firstCouponDate": "2019-08-25T11:52:10.992Z",
"datedDate": "2019-08-25T11:52:10.992Z",
"denominationMinimum": 0,
"denominationMultiple": 0,
"minimumOrderSize" : 1,
"managerTradeBookCode": "string",
"retailTradeBookCode": "string",
"shortTradeBookCode": "string",
"billingAndDeliveryAgent": {
"pmid": "string"
},
"hedgeManager": {
"pmid": "string"
},
"bookOwner": {
"pmid": "string"
}
}
],
"products":
[
{
"initialPriceTarget":"string",
"priceGuidance": "string",
"reOfferPrice": 0,
"price": 0,
"yield": 0,
"bondType": "string",
"yearsToMaturity": "string",
"coupon": {
"type": "Fixed",
"fixedRate": 0,
"floatingRateIndex": "string",
"spread": "string",
"frequency": "Annually",
"dayCount": "string",
"accruedInterest": "2019-08-25T11:52:10.992Z"
},
"levelType": "Guidance",
"currentLevel": "string"
}
]
}
Tranche Object¶
- syndicate
The details of the members of the syndicate at the deal level, if applicable. For full details see Syndicate Object.
- syndicate.role
The role of the syndicate for the order. Valid values are
GlobalCoordinator
,SoleBookrunner
,ActiveBookrunner
,PassiveBookrunner
,JointBookrunner
,JointLeadManager
,SeniorManager
,SoleLead
,SeniorCoLeadManager
,JuniorCoLeadManager
,CoLeadManager
,SeniorCoManager
,JuniorCoManager
,CoManager
,SellingGroup
,StructuringAdvisor
,NonMember
,Member
,Underwriter
,LeadManagerBookrunner
,Owner
,EsgStructuringAdvisor
orGreenStructuringAdvisor
.- pricingReference
The pricing reference for the tranche.
- pricingReference.type
The type of pricing reference. Valid value are
Security
,MidSwaps
,Yield
,Price
,Index
orFutures
.- pricingReference.referenceSecurity
The security for the pricing reference, when type is
Security
orFutures
. For full details see Security Object.- pricingReference.reference
A description of the reference entity when not a security.
- benchmarkBond
The benchmark bond security. For full details see Security Object.
- hedges
An array of securities specified as hedges on the tranche. For full details see Security Object.
- switches
An array of securities specified as switches on the tranche. For full details see Security Object.
- announcementDate
The date of announcement.
- tradeDate
The date of trade.
- pricingDate
The date of pricing.
- firstCouponDate
The date of the first coupon.
- datedDate
The date interest starts to accrue.
- denominationMinimum
The required minimum denomination of orders.
- denominationMultiple
The required multiple denomination of orders.
- minimumOrderSize
Set by Syndicate as the minimum desired order size on the tranche. It must be greater than 0.
- managerTradeBookCode
The manager trade book code
- retailTradeBookCode
The retail trade book code
- shortTradeBookCode
The short trade book code
- billingAndDeliveryAgent
The billing and delivery agent.
- billingAndDeliveryAgent.pmid
The Primary Market identifier (PMID) of the agent.
- hedgeManager
The hedge manager.
- hedgeManager.pmid
The Primary Market identifier (PMID) of the hedge manager.
- bookOwner
The book owner.
- bookOwner.pmid
The Primary Market identifier (PMID) of the book owner.
Product Object¶
- initialPriceTarget
Information provided early in the deal lifecycle to relay current expectations for the price.
- priceGuidance
Current guidance on the price.
- reOfferPrice
The re-offer price of the security.
- price
The price of the security.
- yield
The Yield of the security.
- bondType
The type of bond
- yearsToMaturity
Free text description of the years to maturity
- coupon
A complex type showing the information for the coupon. For full details see Coupon Object.
- putDate
The put date.
- LevelType
In bond pricing, an indication of what stage of the deal that pricing is known for. For example, at the start of the deal there may be no price guidance. As the deal progresses, the bank issues a, IPT (initial price target) and shows a range of values where they think it will price. As the deal progresses and demand and market conditions are evaluated, the price will firm up and the bank will issue a final price level. Valid values are
IPT
,Guidance
,SpreadSet
,Final
,Launch
orReoffer
.- CurrentLevel
Based on the stage of the deal, the bank will communicate a price (range or exact). Depending on the pricing reference.
Security Object¶
- name
The name of the security
- identificationCodes
An array of identification codes to identify the security.
- identificationCodes.type
The type of identification code. Valid values are
Symbol
,CUSIP
,ISIN
,SEDOL
orRIC
.- identificationCodes.code
The actual identification code for this type.
- settlementPrices
An array of complex objects that define the different settlement prices.
- settlementPrices.settlementType
The type of the settlement. Valid values are
Matched
,Date
,Other
,Regular
orOffset
.- settlementPrices.offset
If the settlement type is offset, specifies the offset days.
- settlementPrices.price
The price for this settlement value.
- cashRatio
A value used to calculate cash vs cash hedging
- durationRatio
A value used to calculate duration weighted hedging
- settlementTypeDefault
The default settlement type for the security. Valid values are
Matched
,Date
,Other
,Regular
orOffset
.- settlementOffsetDefault
If the default settlement type is offset, specifies the offset days
- parValue
Nominal value of the security i.e. per unit face value
- coupon
A complex type showing the information for the coupon. For full details see Coupon Object.
- currency
The currency of the security in ISO 4217 format.
- maturityDate
The maturity date of the security.
- spread
Used to indicate the yield difference between two securities.
- BenchmarkSpot
The spot rate of bond is the current yield for a given term. It has a character limit of 255
- BenchmarkYield
Bond Yield is the return an investor realizes on a bond. Calculation of bond yield depends on the bond’s price and the coupon rate. It has decimal and whole number i.e only 21 digits out of which 8 decimals are supported. 21 digits = 13 digits before decimal and 8 digits after.
Coupon Object¶
- type
The type of coupon. Valid values are
Fixed
,FixedToFloating
,Floating
,Variable
orZero
.- fixedRate
The fixed interest rate, if applicable.
- floatingRateIndex
The index for a floating rate, if applicable.
- spread
Used to indicate the difference in the coupon interest rate.
- frequency
The payment frequency of the coupon. Valid values are
Annually
,SemiAnnually
,Quarterly
,Monthly
,BiWeekly
,Weekly
,Daily
orOther
.- dayCount
The day count for interest calculation.
- accruedInterest
The accrued interest date.