Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
version: 3.0.0
title: BTC Markets Report APIs API
contact:
name: API Support
email: support@btcmarkets.net
url: http://btcmarkets.net
x-logo:
url: /doc/images/small-logo.png
altText: BtcMarkets logo
description: '# Introduction
Welcome to BTC Markets API v3.'
servers:
- url: https://api.btcmarkets.net
description: Production
tags:
- name: Report APIs
paths:
/v3/reports:
post:
tags:
- Report APIs
summary: Create new Report
description: Request to generate a new report.
requestBody:
content:
application/json:
schema:
allOf:
- description: create new report
title: New report
- $ref: '#/components/schemas/CreateReportRequest'
examples:
bid:
summary: new order example
value:
type: TransactionReport
format: json
operationId: postV3Reports
x-operation-id-source: derived
/v3/reports/{id}:
get:
tags:
- Report APIs
summary: Get Report by ID
parameters:
- name: reportId
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
examples:
basic:
$ref: '#/components/examples/ReportExample'
description: 'This API returns details of the report once it''s been created via the previous API.
On average, report generation takes about 20 seconds. Please allow a minimum of 10 seconds, although we recommend waiting at least 30 seconds, before attempting to get details of the report after you request it via the previous API. Trying too quickly to get details of a newly created report will result in an HTTP `404` response. A successful response of this API contains a link that you can use to download the report content.
The attribute `contentUrl` inside the above response is a link to download the report content (in either `json` or `csv` format).
Please note that report content files are only available for download for up to 30 minutes after creation time.
The reporting system allows users to run different types of reports. At this stage, API v3 supports `TransactionReport` and `AccountTradingReport`.
A transaction report covers all the historical changes made to all of your wallets including deposits, withdrawals, airdrops, rewards, buy/sell transfers, internal transfers, order executions, and trading fees.
An account trading report covers all the historical trades made on your account.
Sample transaction report content in json format:
```
[{"transactionId":"12345","creationTime":"2017-12-11T06:01:28Z","recordType":"Fund Transfer","action":"Deposit","currency":"AUD","amount":"10","description":"EFT deposit was successfull.Reference: testing bank","balance":"10","referenceId":"260"},
{"transactionId":"830309","creationTime":"2018-07-11T06:26:34Z","recordType":"Trade","action":"Sell Order","currency":"BTC","amount":"-0.49","description":"Sell 0.49000000BTC @ AUD 19.87000000 Fully matched at 29.55000000","balance":"124.89128772","referenceId":"830303"},
{"transactionId":"830310","creationTime":"2018-07-11T06:26:34Z","recordType":"Trade","action":"Sell Order","currency":"AUD","amount":"14.4795","description":"Sell 0.49000000BTC @ AUD 29.55000000 Trade settled","balance":"17497.62177794","referenceId":"830303"},
{"transactionId":"830311","creationTime":"2018-07-11T06:26:34Z","recordType":"Trade","action":"Trading Fee","currency":"AUD","amount":"-0.1201797","description":"Sell 0.49000000BTC @ AUD 29.55000000 Trading fee","balance":"17497.50159824","referenceId":"830303"}]
```
* `referenceId` in this report represents either orderId or the ID of the fund transfer.
* For orders, multiple transactions will have the same `referenceId` that covers increase/decrease of amounts in corresponding wallets (e.g. buy BTC using AUD wallet) and also the fees paid.
* `recordType` can be either "Fund Transfer" (representing deposits, withdrawals, airdrops, rewards, buy/sell transfers and internal transfers between a parent account and its sub accounts, with action `Internal Transfer Out` or `Internal Transfer In`) or "Trade" (representing buys, sells, and trading fees).
* `balance` represents the balance after each transaction.
Sample trading report content in csv format:
```
id, creationTime, price, amount, side, marketId, fee(Inc tax), feeAssetName, feeInBaseCurrency(Inc tax), taxInBaseCurrency, orderId, liquidityType
19667,2018-07-04T22:40:31.695000Z,0.66,1,Ask,XRP-AUD,0.00560999,AUD,0.00560999,0.00050999,19655,Taker
23022,2018-09-21T14:56:25.801000Z,1,1,Ask,XRP-AUD,0.00849999,AUD,0.00849999,0.00077272,19641,Taker
29962,2019-02-28T01:06:10.776000Z,0.212,1,Bid,BAT-AUD,0.00180199,AUD,0.00180199,0.00016381,29651,Taker
```'
operationId: getV3ReportsById
x-operation-id-source: derived
components:
examples:
ReportExample:
value:
id: jsqmkd72lmd13cd0
contentUrl: https://report.s3.ap-southeast-2.amazonaws.com/jsqmkd72lmd13cd0
creationTime: '2019-08-20T18:08:06.110000Z'
type: TransactionReport
status: Complete
format: json
summary: report by id
schemas:
CreateReportRequest:
type: object
required:
- type
- format
properties:
type:
description: type of the report. the only accepted values are `TransactionReport` or `AccountTradingReport` at this stage.
type: string
format:
description: value can be either `csv` or `json`
type: string
x-tagGroups:
- name: Order Matching
tags:
- order_status
- OrderTypes
- StopOrders
- ClientOrderId
- Timeinforce
- TargetAmount
- PostOnly
- SelfTrade
- market_status
- name: APIs
tags:
- Market Data APIs
- Order Placement APIs
- Batch Order APIs
- Trade APIs
- Fund Management APIs
- Account APIs
- Report APIs
- Misc APIs
- ErrorCodes
- name: WebSocket Feed
tags:
- WS_Overview
- WS_Public_Events
- WS_Private_Events
- name: FIX API
tags:
- fix_introduction
- fix_order_entry
- fix_drop_copy
- fix_market_data
- fix_messages
x-provenance:
method: searched
source: https://docs.btcmarkets.net/doc/openapi/index.yaml
generated: '2026-10-13'
note: Bundled from the provider-published multi-file OpenAPI (index.yaml, path/orders.yaml, components/index.yaml, info/index.yaml); verbatim sources in openapi/source/. Only external file $refs were inlined.