Query bank statements
curl --request POST \
--url https://sandbox.tight.com/v6/banks/statements/query \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"cursor": "<string>",
"limit": 123,
"sort": {
"orderBy": "DATE_UPLOADED"
},
"filter": {
"bankAccount": {
"id": {
"in": [
"<string>"
],
"notIn": [
"<string>"
]
}
}
}
}
'import requests
url = "https://sandbox.tight.com/v6/banks/statements/query"
payload = {
"cursor": "<string>",
"limit": 123,
"sort": { "orderBy": "DATE_UPLOADED" },
"filter": { "bankAccount": { "id": {
"in": ["<string>"],
"notIn": ["<string>"]
} } }
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
cursor: '<string>',
limit: 123,
sort: {orderBy: 'DATE_UPLOADED'},
filter: {bankAccount: {id: {in: ['<string>'], notIn: ['<string>']}}}
})
};
fetch('https://sandbox.tight.com/v6/banks/statements/query', 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://sandbox.tight.com/v6/banks/statements/query",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'cursor' => '<string>',
'limit' => 123,
'sort' => [
'orderBy' => 'DATE_UPLOADED'
],
'filter' => [
'bankAccount' => [
'id' => [
'in' => [
'<string>'
],
'notIn' => [
'<string>'
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.tight.com/v6/banks/statements/query"
payload := strings.NewReader("{\n \"cursor\": \"<string>\",\n \"limit\": 123,\n \"sort\": {\n \"orderBy\": \"DATE_UPLOADED\"\n },\n \"filter\": {\n \"bankAccount\": {\n \"id\": {\n \"in\": [\n \"<string>\"\n ],\n \"notIn\": [\n \"<string>\"\n ]\n }\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.tight.com/v6/banks/statements/query")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"cursor\": \"<string>\",\n \"limit\": 123,\n \"sort\": {\n \"orderBy\": \"DATE_UPLOADED\"\n },\n \"filter\": {\n \"bankAccount\": {\n \"id\": {\n \"in\": [\n \"<string>\"\n ],\n \"notIn\": [\n \"<string>\"\n ]\n }\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.tight.com/v6/banks/statements/query")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cursor\": \"<string>\",\n \"limit\": 123,\n \"sort\": {\n \"orderBy\": \"DATE_UPLOADED\"\n },\n \"filter\": {\n \"bankAccount\": {\n \"id\": {\n \"in\": [\n \"<string>\"\n ],\n \"notIn\": [\n \"<string>\"\n ]\n }\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "bst_28868401",
"status": "ACTIVE",
"url": "https://cdn.sandbox.tight.com/statements/bst_28868401.pdf",
"bankAccount": {
"id": "bka_7542850",
"name": "Business Checking",
"displayName": "Business Checking *1687"
},
"period": {
"beginDate": "2024-01-01",
"endDate": "2024-01-31"
},
"customData": {
"internal_key": "some_internal_key",
"some_other_field": 23434
}
}
],
"cursor": {
"after": "<string>",
"before": "<string>"
}
}{
"result": "FAILURE",
"error": [
{
"type": "REQUIRED",
"message": "Amount is required",
"param": "amount"
}
]
}{
"result": "FAILURE",
"error": [
{
"type": "INVALID_TOKEN",
"message": "Invalid access token"
}
]
}{
"result": "FAILURE",
"error": [
{
"type": "FORBIDDEN",
"message": "Expired access token"
}
]
}{
"result": "FAILURE",
"error": [
{
"type": "BAD_REQUEST",
"message": "Resource not found"
}
]
}{
"result": "FAILURE",
"error": [
{
"type": "UNKNOWN_ERROR",
"message": "Something went wrong. Please try again later."
}
]
}Bank Statements
Query bank statements
Query bank statements for the authenticated user
POST
/
v6
/
banks
/
statements
/
query
Query bank statements
curl --request POST \
--url https://sandbox.tight.com/v6/banks/statements/query \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"cursor": "<string>",
"limit": 123,
"sort": {
"orderBy": "DATE_UPLOADED"
},
"filter": {
"bankAccount": {
"id": {
"in": [
"<string>"
],
"notIn": [
"<string>"
]
}
}
}
}
'import requests
url = "https://sandbox.tight.com/v6/banks/statements/query"
payload = {
"cursor": "<string>",
"limit": 123,
"sort": { "orderBy": "DATE_UPLOADED" },
"filter": { "bankAccount": { "id": {
"in": ["<string>"],
"notIn": ["<string>"]
} } }
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
cursor: '<string>',
limit: 123,
sort: {orderBy: 'DATE_UPLOADED'},
filter: {bankAccount: {id: {in: ['<string>'], notIn: ['<string>']}}}
})
};
fetch('https://sandbox.tight.com/v6/banks/statements/query', 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://sandbox.tight.com/v6/banks/statements/query",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'cursor' => '<string>',
'limit' => 123,
'sort' => [
'orderBy' => 'DATE_UPLOADED'
],
'filter' => [
'bankAccount' => [
'id' => [
'in' => [
'<string>'
],
'notIn' => [
'<string>'
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.tight.com/v6/banks/statements/query"
payload := strings.NewReader("{\n \"cursor\": \"<string>\",\n \"limit\": 123,\n \"sort\": {\n \"orderBy\": \"DATE_UPLOADED\"\n },\n \"filter\": {\n \"bankAccount\": {\n \"id\": {\n \"in\": [\n \"<string>\"\n ],\n \"notIn\": [\n \"<string>\"\n ]\n }\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.tight.com/v6/banks/statements/query")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"cursor\": \"<string>\",\n \"limit\": 123,\n \"sort\": {\n \"orderBy\": \"DATE_UPLOADED\"\n },\n \"filter\": {\n \"bankAccount\": {\n \"id\": {\n \"in\": [\n \"<string>\"\n ],\n \"notIn\": [\n \"<string>\"\n ]\n }\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.tight.com/v6/banks/statements/query")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cursor\": \"<string>\",\n \"limit\": 123,\n \"sort\": {\n \"orderBy\": \"DATE_UPLOADED\"\n },\n \"filter\": {\n \"bankAccount\": {\n \"id\": {\n \"in\": [\n \"<string>\"\n ],\n \"notIn\": [\n \"<string>\"\n ]\n }\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "bst_28868401",
"status": "ACTIVE",
"url": "https://cdn.sandbox.tight.com/statements/bst_28868401.pdf",
"bankAccount": {
"id": "bka_7542850",
"name": "Business Checking",
"displayName": "Business Checking *1687"
},
"period": {
"beginDate": "2024-01-01",
"endDate": "2024-01-31"
},
"customData": {
"internal_key": "some_internal_key",
"some_other_field": 23434
}
}
],
"cursor": {
"after": "<string>",
"before": "<string>"
}
}{
"result": "FAILURE",
"error": [
{
"type": "REQUIRED",
"message": "Amount is required",
"param": "amount"
}
]
}{
"result": "FAILURE",
"error": [
{
"type": "INVALID_TOKEN",
"message": "Invalid access token"
}
]
}{
"result": "FAILURE",
"error": [
{
"type": "FORBIDDEN",
"message": "Expired access token"
}
]
}{
"result": "FAILURE",
"error": [
{
"type": "BAD_REQUEST",
"message": "Resource not found"
}
]
}{
"result": "FAILURE",
"error": [
{
"type": "UNKNOWN_ERROR",
"message": "Something went wrong. Please try again later."
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, see Authentication for more detail.
Body
application/json
Response
Success
The result of the action performed.
Available options:
SUCCESS, FAILURE The data generated by the action performed.
Show child attributes
Show child attributes
Cursor to be used in your subsequent paginated request. Only populated if there are more pages available.
Show child attributes
Show child attributes
⌘I