curl --request GET \
--url https://breadbox.example.com/api/v1/providers \
--header 'X-API-Key: <api-key>'import requests
url = "https://breadbox.example.com/api/v1/providers"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://breadbox.example.com/api/v1/providers', 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://breadbox.example.com/api/v1/providers",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$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://breadbox.example.com/api/v1/providers"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://breadbox.example.com/api/v1/providers")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://breadbox.example.com/api/v1/providers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"name": "<string>",
"configured": true,
"needs_link_session": true,
"capabilities": [
"<string>"
],
"credentials_schema": {}
}
]List configured providers
Returns the self-describing registry of bank-data providers this server
supports, including which are configured, their capabilities, and the
shape of credentials they accept on POST /connections.
Unconfigured providers still appear with configured: false so clients
can render a “set me up” CTA without guessing what providers exist.
Response is a bare JSON array (bounded resource — see API conventions).
curl --request GET \
--url https://breadbox.example.com/api/v1/providers \
--header 'X-API-Key: <api-key>'import requests
url = "https://breadbox.example.com/api/v1/providers"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://breadbox.example.com/api/v1/providers', 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://breadbox.example.com/api/v1/providers",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$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://breadbox.example.com/api/v1/providers"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://breadbox.example.com/api/v1/providers")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://breadbox.example.com/api/v1/providers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"name": "<string>",
"configured": true,
"needs_link_session": true,
"capabilities": [
"<string>"
],
"credentials_schema": {}
}
]Authorizations
Breadbox API key with format bb_<base62>. Carries either read_only
or full_access scope. Write endpoints (and a handful of sensitive
reads — /api-keys, /users/{user_id}/login) require full_access;
endpoints that require it are flagged in their description.
Response
Provider registry.
Provider identifier (plaid, teller, csv, ...)
True when this provider's config is set on this server.
True when POST /providers/{name}/link-session returns a token; false when it returns 204.
Informational; e.g. transactions, balances.
Per-field descriptor for the credentials payload on POST /connections.
Show child attributes
Show child attributes