Get a report
Retrieve a report by ID, to follow its status.
Supports Nxos-On-Behalf-Of on the same terms as listing.
curl --request GET \
--url https://api.nxos.io/v1/reports/{reportId} \
--header 'Authorization: <authorization>'import requests
url = "https://api.nxos.io/v1/reports/{reportId}"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://api.nxos.io/v1/reports/{reportId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.nxos.io/v1/reports/{reportId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.nxos.io/v1/reports/{reportId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.nxos.io/v1/reports/{reportId}")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nxos.io/v1/reports/{reportId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"object": "report",
"reportId": "rpt_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4",
"type": "ACCOUNT_STATEMENT",
"format": "PDF",
"status": "READY",
"from": "2026-09-01",
"to": "2026-09-30",
"asOf": null,
"currency": "USD",
"fileName": "NXOS - Account statement - 2026-09 - Acme Ltd.pdf",
"sizeBytes": 48211,
"createdAt": "2026-10-01T09:12:44.000Z",
"readyAt": "2026-10-01T09:12:51.000Z"
}Headers
Bearer token. Format: Bearer <api_key>
Path Parameters
Report identifier.
Response
The request has succeeded.
A report of your organization: a statement, a balance certificate or a bank confirmation letter.
Object type. Always report.
report Report identifier.
The kind of document.
ACCOUNT_STATEMENT, TRANSACTION_STATEMENT, BALANCE_CERTIFICATE, BANK_CONFIRMATION_LETTER File format.
PDF, CSV Where the report stands. Download it once READY.
PENDING, PROCESSING, READY, FAILED First day covered (YYYY-MM-DD, UTC) for a statement; null otherwise.
Last day covered, inclusive (YYYY-MM-DD, UTC) for a statement; null otherwise.
The day whose closing balances a certificate states (YYYY-MM-DD, UTC); null for other reports.
The one currency covered, or null when the report covers every currency.
File name, once READY.
File size in bytes, once READY.
When the report was requested.
When the file became available. null until READY.
curl --request GET \
--url https://api.nxos.io/v1/reports/{reportId} \
--header 'Authorization: <authorization>'import requests
url = "https://api.nxos.io/v1/reports/{reportId}"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://api.nxos.io/v1/reports/{reportId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.nxos.io/v1/reports/{reportId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.nxos.io/v1/reports/{reportId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.nxos.io/v1/reports/{reportId}")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.nxos.io/v1/reports/{reportId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"object": "report",
"reportId": "rpt_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4",
"type": "ACCOUNT_STATEMENT",
"format": "PDF",
"status": "READY",
"from": "2026-09-01",
"to": "2026-09-30",
"asOf": null,
"currency": "USD",
"fileName": "NXOS - Account statement - 2026-09 - Acme Ltd.pdf",
"sizeBytes": 48211,
"createdAt": "2026-10-01T09:12:44.000Z",
"readyAt": "2026-10-01T09:12:51.000Z"
}