openapi: 3.0.0 info: title: A7 Analytics Platform - Algo management Algo management API Auctions API description: 'A7 Analytics Platform for the main T7 trading venues of Deutsche Börse Group and for the MDP feed of CME Group. The platform enables clients to perform pre/at/post trade analysis and to interact with market data and analytics.It provides clients access to the most granular un-normalized/genuine historical order book data (EOBI, MDP) as well as constructed order books, off-the-shelf analytics and allows them to build their own custom analytics utilizing algo functionality, which is a flexible high-performance framework based on historical order book data.

The A7 data can be accessed either via the user interface or via RESTful API.

The algo management API provides access to the A7 algos and their results. With the API it is possible to create, update, delete and run algos and to access the results of the algo runs. All available endpoints are described in detail below.

Security measures:
In order to prevent unauthorized access to the API an authentication token must be used. A7 utilises the bearer authentication scheme for this purpose. The authentication token must be added to the header of each request message. Depending on the implementation it might be necessary to add the keyword "Bearer" to the token string as a prefix followed by a space.

A token can be generated at the A7 user interface. After login the user has to click on the user icon in the upper right corner, click on API token generation and finally click on Request API key. The generated token will be displayed directly in the user interface.

' contact: name: Deutsche Börse Data & Analytics url: https://www.mds.deutsche-boerse.com email: analytics@deutsche-boerse.com version: 1.0.2 servers: - url: /api/v1 description: A7 production environment security: - bearerAuth: [] tags: - name: Auctions paths: /auction/{exchange}/{date}/{marketSegmentID}/{securityID}/: get: tags: - Auctions summary: retrieves list of auction types description: The request delivers all available auction types for the selected security that is identified by market, trading day, market segment ID and security ID. operationId: getAuctions parameters: - $ref: '#/components/parameters/exchange' - $ref: '#/components/parameters/date' - $ref: '#/components/parameters/marketSegmentID' - $ref: '#/components/parameters/securityID' responses: 200: description: successful operation content: application/json: schema: description: array of auction types type: array items: $ref: '#/components/schemas/auctionType' example: - opening - intraday - closing application/gzip: schema: type: array items: $ref: '#/components/schemas/auctionType' format: binary example: - opening - intraday - closing 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 403: $ref: '#/components/responses/403' 404: $ref: '#/components/responses/404' /auction/{exchange}/{date}/{symbol}/: get: tags: - Auctions summary: retrieves list of auction types description: The request delivers all available auction types for the selected security that is identified by market, trading day and trading symbol. operationId: getAuctionsBySymbol parameters: - $ref: '#/components/parameters/exchange' - $ref: '#/components/parameters/date' - $ref: '#/components/parameters/symbol' responses: 200: description: successful operation content: application/json: schema: description: array of auction types type: array items: $ref: '#/components/schemas/auctionType' example: - opening - intraday - closing application/gzip: schema: type: array items: $ref: '#/components/schemas/auctionType' format: binary example: - opening - intraday - closing 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 403: $ref: '#/components/responses/403' 404: $ref: '#/components/responses/404' /auction/{exchange}/{date}/{marketSegmentID}/{securityID}/{auctionType}: get: tags: - Auctions summary: retrieves auction's historical data and optionally simulated outcome of an auction description: The request delivers historical data for the selected auction that is identified by market, trading day, market segment ID and security ID, and optionally a simulated outcome of an auction, if complete information of an additional order (side {side}, limit price {px}, quantity {qty}) and optionally order priority {prio} and is provided. operationId: getAuction parameters: - $ref: '#/components/parameters/exchange' - $ref: '#/components/parameters/date' - $ref: '#/components/parameters/marketSegmentID' - $ref: '#/components/parameters/securityID' - $ref: '#/components/parameters/auctionType' - $ref: '#/components/parameters/side' - $ref: '#/components/parameters/px' - $ref: '#/components/parameters/prio' - $ref: '#/components/parameters/qty' responses: 200: description: successful operation content: application/json: schema: $ref: '#/components/schemas/auction' application/gzip: schema: $ref: '#/components/schemas/auction' format: binary 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 403: $ref: '#/components/responses/403' 404: $ref: '#/components/responses/404' /auction/{exchange}/{date}/{symbol}/{auctionType}: get: tags: - Auctions summary: retrieves auction's historical data and optionally simulated outcome of an auction description: The request delivers historical data for the selected auction that is identified by market, trading day and trading symbol, and optionally a simulated outcome of an auction, if complete information of an additional order (side {side}, limit price {px}, quantity {qty}) and optionally order priority {prio} and is provided. operationId: getAuctionBySymbol parameters: - $ref: '#/components/parameters/exchange' - $ref: '#/components/parameters/date' - $ref: '#/components/parameters/symbol' - $ref: '#/components/parameters/auctionType' - $ref: '#/components/parameters/side' - $ref: '#/components/parameters/px' - $ref: '#/components/parameters/prio' - $ref: '#/components/parameters/qty' responses: 200: description: successful operation content: application/json: schema: $ref: '#/components/schemas/auction' application/gzip: schema: $ref: '#/components/schemas/auction' format: binary 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 403: $ref: '#/components/responses/403' 404: $ref: '#/components/responses/404' components: parameters: securityID: name: securityID in: path description: unique security identifier required: true schema: $ref: '#/components/schemas/securityID' auctionType: name: auctionType in: path description: auction type required: true schema: $ref: '#/components/schemas/auctionType' date: name: date in: path required: true description: trading day in the format YYYYMMDD schema: $ref: '#/components/schemas/date' marketSegmentID: name: marketSegmentID in: path description: unique market segment identifier required: true schema: $ref: '#/components/schemas/marketSegmentID' symbol: name: symbol in: path description: unique trading symbol identifier required: true schema: $ref: '#/components/schemas/symbol' exchange: name: exchange in: path description: exhange identifier code required: true schema: $ref: '#/components/schemas/exchange' prio: name: prio in: query description: order priority (default 0) required: false schema: type: array items: $ref: '#/components/schemas/timestamp' style: form explode: true side: name: side in: query description: side of an order required: false schema: type: array items: $ref: '#/components/schemas/side' style: form explode: true qty: name: qty in: query description: quantity of an order required: false schema: type: array items: $ref: '#/components/schemas/qty' style: form explode: true px: name: px in: query description: limit price of an order, a null value corresponds to a market order required: false schema: type: array items: oneOf: - $ref: '#/components/schemas/px' - $ref: '#/components/schemas/null_string' style: form explode: true schemas: symbol: description: trading symbol type: string example: DB1 auction: description: auction's historical data and optionally simulated outcome of an auction type: object properties: Exchange: $ref: '#/components/schemas/exchange' Date: $ref: '#/components/schemas/date' MarketSegmentID: $ref: '#/components/schemas/marketSegmentID' SecurityID: $ref: '#/components/schemas/securityID' AuctionType: $ref: '#/components/schemas/auctionType' AuctionStartTimestamp: $ref: '#/components/schemas/timestamp' AuctionEndTimestamp: $ref: '#/components/schemas/timestamp' AuctionReferencePrice: $ref: '#/components/schemas/px' UncrossingPrice: oneOf: - $ref: '#/components/schemas/px' - $ref: '#/components/schemas/null_string' MatchedVolume: $ref: '#/components/schemas/qty' SimulatedUncrossingPrice: $ref: '#/components/schemas/px' SimulatedMatchedVolume: $ref: '#/components/schemas/qty' SimulatedOrders: description: simulated orders type: array items: type: object properties: Side: $ref: '#/components/schemas/side' Px: oneOf: - $ref: '#/components/schemas/px' - $ref: '#/components/schemas/null_string' Prio: $ref: '#/components/schemas/timestamp' Qty: $ref: '#/components/schemas/qty' TradedQty: $ref: '#/components/schemas/qty' required: - Side - Px - Prio - Qty - TradedQty required: - Exchange - Date - MarketSegmentID - SecurityID - AuctionType - AuctionStartTimestamp - AuctionEndTimestamp - AuctionReferencePrice - UncrossingPrice - MatchedVolume securityID: description: security ID type: integer format: int64 minimum: -9223372036854775808 maximum: 9223372036854775807 example: 2504978 marketSegmentID: description: market segment ID type: integer format: int32 example: 52885 null_string: description: a null string that corresponds to a market order type: string enum: - 'null' example: 'null' side: description: side of an order type: string enum: - bid - ask example: bid date: description: date representation type: integer format: int32 example: 20230111 exchange: description: exchange mic type: string minLength: 4 maxLength: 4 example: XETR timestamp: description: timestamp as number of nanoseconds since Unix epoch type: integer format: int64 minimum: 0 maximum: 18446744073709551615 default: 0 example: 1652962104095620563 qty: description: quantity of an order type: integer format: int64 minimum: -9223372036854775808 maximum: 9223372036854775807 example: 125 px: description: limit price of an order type: number format: double example: 178.25 auctionType: description: auction type type: string enum: - opening - intraday - closing example: opening responses: '401': description: authorization failed content: text/plain: schema: type: string example: specific error message '403': description: access denied content: text/plain: schema: type: string example: specific error message '404': description: not found '400': description: bad request content: text/plain: schema: type: string example: specific error message securitySchemes: bearerAuth: type: http scheme: bearer