curl --request GET \
--url https://platform.spritz.finance/v1/funding-sources/{fundingSourceId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://platform.spritz.finance/v1/funding-sources/{fundingSourceId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://platform.spritz.finance/v1/funding-sources/{fundingSourceId}', 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://platform.spritz.finance/v1/funding-sources/{fundingSourceId}",
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: Bearer <token>"
],
]);
$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://platform.spritz.finance/v1/funding-sources/{fundingSourceId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://platform.spritz.finance/v1/funding-sources/{fundingSourceId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://platform.spritz.finance/v1/funding-sources/{fundingSourceId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "fs_01JV7Q8M4Y8K6N2Z5P3R1T9W0X",
"bankAccountId": "ba_abc123",
"institutionName": "Plaid Test Bank",
"institution": {
"name": "Chase",
"logoUrl": "https://assets.platform.spritz.finance/institutions/ins_109508.png",
"primaryColor": "#1e88e5"
},
"accountNumberLast4": "6789",
"accountType": "checking",
"status": "pending",
"statusReason": "ownership_mismatch",
"availableAt": "2026-09-18T15:04:05.000Z",
"permanent": true,
"deletedAt": null,
"createdAt": "2023-11-07T05:31:56Z"
}{
"title": "Unauthorized",
"status": 401,
"type": "urn:problem-type:auth:unauthorized",
"detail": "Bearer token required",
"instance": "<string>",
"realm": "API",
"scope": "read:users"
}{
"title": "<string>",
"status": 404,
"resourceType": "user",
"resourceId": "<string>",
"type": "about:blank",
"detail": "<string>",
"instance": "<string>"
}{
"title": "Unauthorized",
"status": 400,
"type": "urn:problem-type:auth:unauthorized",
"detail": "<string>",
"instance": "/errors/1234567890",
"code": "transaction_limit",
"field": "amountUsd",
"retryable": true,
"retryAfter": 5,
"suggestedAction": "auto_ramp",
"clearsAt": "2023-11-07T05:31:56Z",
"availableAt": "2023-11-07T05:31:56Z",
"permanent": true
}Get a funding source
Returns details for a specific funding source for the authenticated user.
curl --request GET \
--url https://platform.spritz.finance/v1/funding-sources/{fundingSourceId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://platform.spritz.finance/v1/funding-sources/{fundingSourceId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://platform.spritz.finance/v1/funding-sources/{fundingSourceId}', 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://platform.spritz.finance/v1/funding-sources/{fundingSourceId}",
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: Bearer <token>"
],
]);
$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://platform.spritz.finance/v1/funding-sources/{fundingSourceId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://platform.spritz.finance/v1/funding-sources/{fundingSourceId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://platform.spritz.finance/v1/funding-sources/{fundingSourceId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "fs_01JV7Q8M4Y8K6N2Z5P3R1T9W0X",
"bankAccountId": "ba_abc123",
"institutionName": "Plaid Test Bank",
"institution": {
"name": "Chase",
"logoUrl": "https://assets.platform.spritz.finance/institutions/ins_109508.png",
"primaryColor": "#1e88e5"
},
"accountNumberLast4": "6789",
"accountType": "checking",
"status": "pending",
"statusReason": "ownership_mismatch",
"availableAt": "2026-09-18T15:04:05.000Z",
"permanent": true,
"deletedAt": null,
"createdAt": "2023-11-07T05:31:56Z"
}{
"title": "Unauthorized",
"status": 401,
"type": "urn:problem-type:auth:unauthorized",
"detail": "Bearer token required",
"instance": "<string>",
"realm": "API",
"scope": "read:users"
}{
"title": "<string>",
"status": 404,
"resourceType": "user",
"resourceId": "<string>",
"type": "about:blank",
"detail": "<string>",
"instance": "<string>"
}{
"title": "Unauthorized",
"status": 400,
"type": "urn:problem-type:auth:unauthorized",
"detail": "<string>",
"instance": "/errors/1234567890",
"code": "transaction_limit",
"field": "amountUsd",
"retryable": true,
"retryAfter": 5,
"suggestedAction": "auto_ramp",
"clearsAt": "2023-11-07T05:31:56Z",
"availableAt": "2023-11-07T05:31:56Z",
"permanent": true
}Authorizations
User bearer credential: either a Cognito JWT or an ak_ user API key. Backend integrators using HMAC must include the user API key alongside the three HMAC headers on user-scoped endpoints.
Path Parameters
Opaque public funding source ID
"fs_01JV7Q8M4Y8K6N2Z5P3R1T9W0X"
Response
A linked bank account that can be evaluated for inbound funding
A linked bank account that can be evaluated for inbound funding
Opaque public identifier for the funding source
"fs_01JV7Q8M4Y8K6N2Z5P3R1T9W0X"
Underlying bank account identifier
"ba_abc123"
Institution name used for funding source display. Prefer institution.name when present; this field will be removed in a future release.
"Plaid Test Bank"
Branding metadata for the institution backing the funding source, or null when no institution data is available.
Show child attributes
Show child attributes
Last 4 digits of the linked bank account number
"6789"
checking, savings, business, unknown pending, active, review_required, ineligible, disabled, deleted Why the funding source is not active, or null when no reason applies.
ownership_mismatch, ownership_review_required, user_not_verified, duplicate_bank_account, returned, risk_blocked, rerouted, manually_disabled, null "ownership_mismatch"
For a time-boxed block (statusReason: rerouted), when the funding source becomes usable again on its own. Re-linking the same account does not shorten it. Null when the source is usable or the block is not time-bound.
"2026-09-18T15:04:05.000Z"
True when the funding source is disabled and will not become usable again on its own; the user should link a different bank account.
When the funding source was removed by the user, or null while it remains linked. Removed funding sources stay retrievable by id for historical reference.
null
When the funding source was created