curl --request POST \
--url https://int-data.moneydesktop.com/institutions/search \
--header 'Content-Type: application/vnd.mx.nexus.v1+json' \
--header 'MD-SESSION-TOKEN: <api-key>' \
--data '
{
"institution": {
"account_types": "deprecated",
"name": "MX Bank",
"supports_account_identification": false,
"supports_account_verification": false,
"supports_transaction_history": true,
"url": "https://mx.com"
}
}
'import requests
url = "https://int-data.moneydesktop.com/institutions/search"
payload = { "institution": {
"account_types": "deprecated",
"name": "MX Bank",
"supports_account_identification": False,
"supports_account_verification": False,
"supports_transaction_history": True,
"url": "https://mx.com"
} }
headers = {
"MD-SESSION-TOKEN": "<api-key>",
"Content-Type": "application/vnd.mx.nexus.v1+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'MD-SESSION-TOKEN': '<api-key>',
'Content-Type': 'application/vnd.mx.nexus.v1+json'
},
body: JSON.stringify({
institution: {
account_types: 'deprecated',
name: 'MX Bank',
supports_account_identification: false,
supports_account_verification: false,
supports_transaction_history: true,
url: 'https://mx.com'
}
})
};
fetch('https://int-data.moneydesktop.com/institutions/search', 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://int-data.moneydesktop.com/institutions/search",
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([
'institution' => [
'account_types' => 'deprecated',
'name' => 'MX Bank',
'supports_account_identification' => false,
'supports_account_verification' => false,
'supports_transaction_history' => true,
'url' => 'https://mx.com'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/vnd.mx.nexus.v1+json",
"MD-SESSION-TOKEN: <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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://int-data.moneydesktop.com/institutions/search"
payload := strings.NewReader("{\n \"institution\": {\n \"account_types\": \"deprecated\",\n \"name\": \"MX Bank\",\n \"supports_account_identification\": false,\n \"supports_account_verification\": false,\n \"supports_transaction_history\": true,\n \"url\": \"https://mx.com\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("MD-SESSION-TOKEN", "<api-key>")
req.Header.Add("Content-Type", "application/vnd.mx.nexus.v1+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://int-data.moneydesktop.com/institutions/search")
.header("MD-SESSION-TOKEN", "<api-key>")
.header("Content-Type", "application/vnd.mx.nexus.v1+json")
.body("{\n \"institution\": {\n \"account_types\": \"deprecated\",\n \"name\": \"MX Bank\",\n \"supports_account_identification\": false,\n \"supports_account_verification\": false,\n \"supports_transaction_history\": true,\n \"url\": \"https://mx.com\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-data.moneydesktop.com/institutions/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["MD-SESSION-TOKEN"] = '<api-key>'
request["Content-Type"] = 'application/vnd.mx.nexus.v1+json'
request.body = "{\n \"institution\": {\n \"account_types\": \"deprecated\",\n \"name\": \"MX Bank\",\n \"supports_account_identification\": false,\n \"supports_account_verification\": false,\n \"supports_transaction_history\": true,\n \"url\": \"https://mx.com\"\n }\n}"
response = http.request(request)
puts response.read_body{
"institutions": [
{
"code": "mxbank",
"created_at": "2016-09-21T22:03:55.000Z",
"guid": "INS-1572a04c-912b-59bf-5841-332c7dfafaef",
"forgot_password_url": "https://www.mx.com/forgot-password",
"forgot_username_url": "https://www.mx.com/forgot-username",
"has_checking_account": "https://www.mx.com/forgot-username",
"has_credit_card_accounts": true,
"has_investment_accounts": true,
"has_line_of_credit_accounts": true,
"has_loan_accounts": true,
"has_mortgage_accounts": true,
"has_savings_accounts": true,
"is_disabled_by_client": false,
"is_hidden": true,
"is_test": true,
"iso_country_code": [
"US",
"CA"
],
"medium_logo_url": "https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/100x100/INS-1572a04c-912b-59bf-5841-332c7dfafaef_100x100.png",
"name": "MX Bank",
"popularity": 72644,
"small_logo_url": "https://content.moneydesktop.com/storage/MD_AssetsIpad%20Logos/50x50/INS-1572a04c-912b-59bf-5841-332c7dfafaef_50x50.png",
"supports_account_identification": true,
"supports_account_verification": true,
"supports_oauth": true,
"supports_transaction_history": false,
"trouble_signing_in_url": "https://www.mx.com/trouble-signing-in",
"updated_at": "2022-04-11T17:38:27.000Z",
"url": "https://www.mx.com"
}
]
}Search institutions
curl --request POST \
--url https://int-data.moneydesktop.com/institutions/search \
--header 'Content-Type: application/vnd.mx.nexus.v1+json' \
--header 'MD-SESSION-TOKEN: <api-key>' \
--data '
{
"institution": {
"account_types": "deprecated",
"name": "MX Bank",
"supports_account_identification": false,
"supports_account_verification": false,
"supports_transaction_history": true,
"url": "https://mx.com"
}
}
'import requests
url = "https://int-data.moneydesktop.com/institutions/search"
payload = { "institution": {
"account_types": "deprecated",
"name": "MX Bank",
"supports_account_identification": False,
"supports_account_verification": False,
"supports_transaction_history": True,
"url": "https://mx.com"
} }
headers = {
"MD-SESSION-TOKEN": "<api-key>",
"Content-Type": "application/vnd.mx.nexus.v1+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'MD-SESSION-TOKEN': '<api-key>',
'Content-Type': 'application/vnd.mx.nexus.v1+json'
},
body: JSON.stringify({
institution: {
account_types: 'deprecated',
name: 'MX Bank',
supports_account_identification: false,
supports_account_verification: false,
supports_transaction_history: true,
url: 'https://mx.com'
}
})
};
fetch('https://int-data.moneydesktop.com/institutions/search', 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://int-data.moneydesktop.com/institutions/search",
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([
'institution' => [
'account_types' => 'deprecated',
'name' => 'MX Bank',
'supports_account_identification' => false,
'supports_account_verification' => false,
'supports_transaction_history' => true,
'url' => 'https://mx.com'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/vnd.mx.nexus.v1+json",
"MD-SESSION-TOKEN: <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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://int-data.moneydesktop.com/institutions/search"
payload := strings.NewReader("{\n \"institution\": {\n \"account_types\": \"deprecated\",\n \"name\": \"MX Bank\",\n \"supports_account_identification\": false,\n \"supports_account_verification\": false,\n \"supports_transaction_history\": true,\n \"url\": \"https://mx.com\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("MD-SESSION-TOKEN", "<api-key>")
req.Header.Add("Content-Type", "application/vnd.mx.nexus.v1+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://int-data.moneydesktop.com/institutions/search")
.header("MD-SESSION-TOKEN", "<api-key>")
.header("Content-Type", "application/vnd.mx.nexus.v1+json")
.body("{\n \"institution\": {\n \"account_types\": \"deprecated\",\n \"name\": \"MX Bank\",\n \"supports_account_identification\": false,\n \"supports_account_verification\": false,\n \"supports_transaction_history\": true,\n \"url\": \"https://mx.com\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-data.moneydesktop.com/institutions/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["MD-SESSION-TOKEN"] = '<api-key>'
request["Content-Type"] = 'application/vnd.mx.nexus.v1+json'
request.body = "{\n \"institution\": {\n \"account_types\": \"deprecated\",\n \"name\": \"MX Bank\",\n \"supports_account_identification\": false,\n \"supports_account_verification\": false,\n \"supports_transaction_history\": true,\n \"url\": \"https://mx.com\"\n }\n}"
response = http.request(request)
puts response.read_body{
"institutions": [
{
"code": "mxbank",
"created_at": "2016-09-21T22:03:55.000Z",
"guid": "INS-1572a04c-912b-59bf-5841-332c7dfafaef",
"forgot_password_url": "https://www.mx.com/forgot-password",
"forgot_username_url": "https://www.mx.com/forgot-username",
"has_checking_account": "https://www.mx.com/forgot-username",
"has_credit_card_accounts": true,
"has_investment_accounts": true,
"has_line_of_credit_accounts": true,
"has_loan_accounts": true,
"has_mortgage_accounts": true,
"has_savings_accounts": true,
"is_disabled_by_client": false,
"is_hidden": true,
"is_test": true,
"iso_country_code": [
"US",
"CA"
],
"medium_logo_url": "https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/100x100/INS-1572a04c-912b-59bf-5841-332c7dfafaef_100x100.png",
"name": "MX Bank",
"popularity": 72644,
"small_logo_url": "https://content.moneydesktop.com/storage/MD_AssetsIpad%20Logos/50x50/INS-1572a04c-912b-59bf-5841-332c7dfafaef_50x50.png",
"supports_account_identification": true,
"supports_account_verification": true,
"supports_oauth": true,
"supports_transaction_history": false,
"trouble_signing_in_url": "https://www.mx.com/trouble-signing-in",
"updated_at": "2022-04-11T17:38:27.000Z",
"url": "https://www.mx.com"
}
]
}name parameter and setting the value to an empty string. If you cache this list, you must update the cached version at least once each day. We recommend you use this endpoint rather than the deprecated list institutions endpoint to get updated information about institutions.Authorizations
MX Session Token
- Request an API token using the read API token endpoint in the MX SSO API.
- Exchange an API token for a session token.
- A session token is obtained by sending a POST request to /sessions
- The session token will be used in each request made for the user. It should be passed in an
MD-SESSION-TOKENHTTP header as shown below. - This session token is valid for 30 minutes from the time it was created. The 30 minute expiration counter is refreshed with each call.
- If you send a request with an expired session token you'll receive an error code of
4011.
curl -i https://int-data.moneydesktop.com/accounts \
-H 'MD-SESSION-TOKEN: CWforZl1Vn2vC_v6H4rnQRT1DoWpDouJAV-_5TBmiQRAtA8rsOG_BoajTiOSsL0A3bd-bmHXlA-eQzc9ywItKg' \
-H 'Content-Type: application/vnd.mx.nexus.v1+json' \
-H 'Accept: application/vnd.mx.nexus.v1+json'
In documentation code examples, replace <API_KEY_VALUE> with the session token.
Query Parameters
An array of strings that filters institutions in the widget by the specified country code. Acceptable codes include US, CA, and MX (Mexico).
Results are returned in paginated sets, this is the page of the results you would like to view. Defaults to page 1 if no page is specified.
List from 10 to 1000 to determine how many records per page will be used.
Body
Hide child attributes
Hide child attributes
(Deprecated) This search parameter has been deprecated along with associated fields of the pattern has_*_accounts. It should not be used in searches. This returns only institutions which support the specified account types. Provided as a string of integers; search multiple account types by separating each account type with pipes
"deprecated"
Name of the financial instutition.
"MX Bank"
This returns only institutions which support account identification.
false
This returns only institutions which support account verification.
false
This returns only institutions which support extended transaction history.
true
This returns only institutions which match the provided URL.
"https://mx.com"
Response
OK
Hide child attributes
Hide child attributes
A unique identifier for each institution. Defined by MX.
"mxbank"
Date and time the institution was created, represented ISO 8601 format with timestamp.
"2016-09-21T22:03:55.000Z"
A unique identifier for the institution. Defined by MX.
"INS-1572a04c-912b-59bf-5841-332c7dfafaef"
The URL of the institution for helping users recover a forgotten password.
"https://www.mx.com/forgot-password"
The URL of the institution for helping users recover a forgotten username.
"https://www.mx.com/forgot-username"
Deprecated. If the institution has checking accounts, this field will be true. Otherwise, this field will be false.
"https://www.mx.com/forgot-username"
(Deprecated) If the institution has credit card accounts, this field will be true. Otherwise, this field will be false.
true
(Deprecated) If the institution has investment accounts, this field will be true. Otherwise, this field will be false
true
(Deprecated) If the institution has line of credit accounts, this field will be true. Otherwise, this field will be false.
true
(Deprecated) If the institution has loan accounts, this field will be true. Otherwise, this field will be false.
true
(Deprecated) If the institution has mortgage accounts, this field will be true. Otherwise, this field will be false.
true
(Deprecated) If the institution has savings accounts, this field will be true. Otherwise, this field will be false.
true
This indicates whether the institution has been disabled by the client.
false
If the institution is available for creating new member connections, this field will be false. Otherwise, this field will be true.
true
If the institution represents a test institution such as MX Bank, this field will be true. Otherwise, this field will be false.
true
The institution's country code.
["US", "CA"]
The institution's logo (medium size). This may be a generic logo if MX does not have a specific logo for the institution.
"https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/100x100/INS-1572a04c-912b-59bf-5841-332c7dfafaef_100x100.png"
The name of the institution that is visible to the user.
"MX Bank"
The number of member connections to the institution.
72644
The institution's logo (small size). This may be a generic logo if MX does not have a specific logo for the institution.
"https://content.moneydesktop.com/storage/MD_AssetsIpad%20Logos/50x50/INS-1572a04c-912b-59bf-5841-332c7dfafaef_50x50.png"
Indicates whether account identification is available for this institution.
true
Indicates whether account verification is available for this institution.
true
This indicates whether the institution supports OAuth authentication.
true
Indicates whether the institution allows access to up to 24 months of transaction data.
false
The URL of the institution for helping users troubleshoot any other sign-in issue.
"https://www.mx.com/trouble-signing-in"
Date and time the institution was updated, represented in ISO 8601 format with timestamp (e.g. 2015-04-13T12:01:23-00:00).
"2022-04-11T17:38:27.000Z"
The URL of the institution.
"https://www.mx.com"

