Exberry Admin API

Number of APIs: 68

General

Exberry admin API allows to manage the exchange static data (instruments, trading calendars and more) as well as sending operational commands (EOD, halt trading and more).

Sandbox environment endpoint (URL_ORIGIN): https://admin-api.uat.exberry-uat.io

Guidelines:

  • All numbers are stringified unless explicitly mentioned otherwise

  • Optional fields should be omitted from request if not required

  • System ignores any additional parameter that are sent on request body but was not specified in this document

NEW Note: There is an option to enable the maker checker flow for some of the Admin actions. More information can be seen in the relevant section.


Error Handling

Error response contains the below fields:

NameDescription
codeError code
messageError message
path optionalpath for the specific field generate the error
requiredPermission optionalName of missing permission for that action
instrumentId optionalInstrumentId cause the error, relevant for action that affect multiple instruments such as Update Calendar

Error response sample:

{
    "code": 10004,
    "message": "Wrong format",
    "data": {
        "path": [
            "id"
        ]
    }
}

In case of wrong path, generic error will be returned:

{
    "message": "Route not found",
    "code": 1
}

Generic Error Codes

CodeMessage
1Timeout expired/ Exchange is unavailable/ Invalid JSON/ Route not found
NEW v1.31.0 1Maximum request size is 60kb
10000Invalid token
10100Permission denied for exchange [ExchangeID]

Multiple Exchanges

By default the Admin API apply the commands based on the user default setup.
In case that single user needs to use the API for multiple exchange, exchangeId (approved for this user) can be provided as an optional property in a request as follow:

* GET requests: included in the query string (?exchangeId=XYZ)
* POST & PUT request: included in request body ({ ..., exchangeId: XYZ})


API Changes

v1.33.0(2024-08-21)

  • Added Accounts API folder under MP API

    • Added accounts related actions to the maker checker requestType
  • Added accountId to Create API Key

  • Added new APIs to adjust active orders and current market data fields(not historical) in case of Corporate Actions

    • /api/operations/corporate-actions/apply-cash-distribution
    • /api/operations/corporate-actions/apply-security-distribution
  • Support filter for trading halt and trading resume in the maker checker

  • Adding new TIF to auction - IOC

  • Adding new validation to create calendar

v1.32.0(2024-08-07)

  • Changed the derivativeInstrumentCategory filter to filter only instruments that are active and that has an underling instrument and is in this category, in:

    • Get Instruments
    • Trading Halt
    • Trading Resume
  • Added Suffix & Prefix for Symbol & Description filters

  • Added cancelReason to the

    • Cancel Order
    • Mass Cancel

v1.31.0(2024-07-16)

  • Instruments API:

    • Change the status filter to be a list and rename it to statues.
    • Added a validation to prevent changing quantityPrecision & pricePrecision when active Alleged Trades exist.
    • Adding new filter and new values to filters in get instruments, halt and resume

      • product - new value
      • startDateFrom - new value
      • stopDateFrom - new value
      • derivativeInstrumentCategory - new filter
  • tradingHalt and tradingResume

    • Same changes mentioned above on instrument filters
    • Adding new validation to the halt & resume - 201 - You can send up to 750 instruments per request
  • Mass cancelation:

    • Added AllegedTrade to the targetEntities
    • Added targetScope to support cancellation across all instruments.
  • Adding new generic validation - 1 - Maximum request size is 60kb

  • Added cancellation of active Quotes and active Alleged Trades to the Cancel on Disconnect.

  • Added cancellation of active RFQs, Quotes and Alleged Trades when MP is blocked.

v1.30.0(2024-06-19)

  • Adding targetEntities to Mass cancel

  • Adding optional fields to get instruments request to allow filtering

  • Adding more optional fields to Trading Halt and Trading Resume requests

  • Adding possibility for user to override the maker chaekcer flow - by super user with new permission

  • Adding new API to Archive Instrument

    • This action can be cofigured to require make/ checker process
    • Adding new activityStatus to get instrument
  • Adding new validations to instrument update :

    • Disabling an instrumentis not allowed when there are active/suspended orders or active RFQs/Quotes
    • Changing quantityPrecision & pricePrecision is not allowed when there are active/suspended orders or active RFQs/Quotes
  • Removed the comment field in the mass cancel.

v1.29.0(2024-04-23)

  • Adding new Equilibrium Price matching algortihm for auctions

  • Adding the ability to configure auctions.extensions

v1.28.0(2024-04-16)

  • Remove marketStatus and tradingStatus from the response of instrument API

  • Added legPriceBands to the instrument

  • Added new API- place order

  • Added new API - replace order

v1.27.0(2024-04-01)

  • Remove from the response latestTimestamp of makerchecker request

  • Adding to the response makerUserType of makerchecker request

  • Changed the error message returned when configured mandatory parties are not in the Trade Entry

  • tradingModels field will always be included in the response of Create Update and Get Instrument

  • Adding new value to the maker checker requestType - CancelOrder

  • The comment in cancel order is now optional

v1.26.0(2024-02-28)

  • Adding more requestTypes to the Maker Checker

  • Added support for removing tradingModels from instruments.

  • Added a validation to prevent the creation of strategies with strategy leg instruments.

  • Adding new API to the Operations API Cancel Order

  • Adding new field to thew CBR rounding

v1.25.0 (2024-02-07)

  • Changed Update Instrument to allow changing the stopDate after the startDate

  • Adding the Maker Checker section

v1.24.0 (2024-01-17)

  • Changed compId(String) of MP to compIds(String[])

  • Added deliveryStartDate and deliveryEndDate to the Instrument

v1.23.0 (2023-12-26)

  • Bugfix to correct the error returned when updating quantity/price precision of a parent strategy instrument. Error before the fix:Legs [price | quantity] precision must be equal to strategy price precision, error after the fix: [FieldName] can't be changed for strategy related instrument

  • Change the Underlying Instrument of O(Option), F(Futures) and K(Strategies) instruments to Optional.

  • Adding new optional fields to the MP APIs to support Self-Trade Prevention.

v1.21.0 (2023-11-20)

  • Adding sorting to Auction objects in calendar objects

  • Adding a new validation to PricePrecision and QuantityPrecision of strategy instruments(to validate that the same precision exists between parent and leg instruments).

2023-10-03

  • Deprecate v1 Calendar and V1 Instrument

2023-09-19

  • Adding new list to the instrument API- minQuantityTradeEntries

  • Adding new validation to the trade entry - 102 (to consider minQuantityTradeEntries)

2023-08-08

  • Adding targetParties to order mass cancel

  • Adding the contractSize to the validation in create and update instrument

    • 101- Precision of [Fieldname] is greater than [quantityPrecision]
  • Adding edge case to the CBR

2023-07-12

  • Adding the strike and coupon to the validations in create and update instrument

    • 101- Precision of [Fieldname] is greater than [quantityPrecision]
    • 101- [FieldName] must be less than or equal to maxLong/10^ fieldPrecision

2023-06-06

  • Auction changes:

    • Adding seconds to start time
    • New field- overrideReferencePrice
  • CBR Additions:

    • New type of CBR that monitor market rate changes since the previous trade rate (last price).
    • New actionType: RESUME_AUCTION
  • Adding new validation to the create TickSize

  • Changing bonds paramters values

2023-04-23

  • Adding new APIs:

    • TickSize
    • CBR

2023-03-22

  • New subCategory - Bonds

    • New underlyingAssets
    • New optional fields in instruments

2023-02-13

  • Added available values for:

    • categoty
    • subCategory
    • underlyingAssets

2023-02-08

  • new API permission in MP and MP Group

  • New Operations API allows to:

    • Trading Halt
    • Trading Resume
    • Mass cancel

2023-01-18

  • IMPORTANT! New response on MP Group

  • MP name max length = 30

  • In MP and MPGroup for name and compId fields will have ASCII (32 -126) chars only

2023-01-03

  • New field in auction- trigger

2022-12-06

  • New strategy- strips

  • Cancel On Disconnect flag in apiKey

2022-11-21

  • Trade Entry- response tradeId

  • Instrument symbol- allowed /= characters

  • New optional fields in the instrument for spreads strategy

2022-10-30

  • New optional fields in instrument API

  • Instrument API- quoteCurrency is now limited to 10 characters

  • End of day trigger

  • MP status (Active/ Blocked)

2022-10-03

  • New APIKeys permission-

MP

How it was-

  • Market Data

  • Trading

  • Mass Cancel

  • Drop Copy

  • Reporting

How it is now-

  • Market Data group:

  • Real Time Market Data

  • Market Data Snapshot

  • Trading group:

  • Place Order

  • Cancel Order

  • Modify Order

  • Replace Order

  • Mass Cancel

  • Drop Copy group:

  • Execution Reports

  • Mass Order Status

  • Trades

  • Reporting group:

  • Orders History

  • Trades History

MP Group

How it was-

  • Market Data

  • Drop Copy

  • Reporting

How it is now-

  • Market Data group:

  • Real Time Market Data

  • Market Data Snapshot

  • Drop Copy group:

  • Execution Reports

  • Mass Order Status

  • Trades

  • Reporting group:

  • Orders History

  • Trades History

2022-09-13

  • New Operations API allows to:

  • Capture Trade entry

  • Cancel Trade

  • Set settlement prices

  • Instrument object is now changed and now includes more optional fields

2022-08-31

  • New APIs:

  • MPs API

  • MP Groups API

2021-06-29

  • Instrument symbol can now contains .(dot) and -(hyphen)

  • Calendar.tradingDays is now optional to allow auctions only trading schedule.

April 2021

  • Initial version of API released.
  1. Calendars API - Get Calendar GET {{URL_ORIGIN}}/api/v2/calendars/:id

  2. Calendars API - End Of Day POST {{URL_ORIGIN}}/api/v2/calendars/:id/end-of-day

  3. Maker Checker - Update Calendar PUT {{URL_ORIGIN}}/api/v2/calendars/10

  4. Maker Checker - NEW Cancel Order POST {{URL_ORIGIN}}/api/operations/cancel-order

  5. Archive-Deprecated - Instrument V1 - Create Instrument POST {{URL_ORIGIN}}/api/instruments

  6. Archive-Deprecated - Calendars V1 - Update Calendar PUT {{URL_ORIGIN}}/api/calendars/:id

  7. Archive-Deprecated - Calendars V1 - Get Calendar GET {{URL_ORIGIN}}/api/calendars/:id

  8. MP Groups API-apiKey - Get apiKeys GET {{URL_ORIGIN}}/api/mp-groups/49/api-keys

  9. Maker Checker - Update CBR PUT {{URL_ORIGIN}}/api/cbrs/31

  10. Authentication API - Get Token POST {{URL_ORIGIN}}/api/auth/token