curl --request POST \
--url https://int-api.mx.com/users/{user_guid}/members \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"client_redirect_url": "https://{yoursite.com}",
"enable_app2app": false,
"referral_source": "APP",
"ui_message_webview_url_scheme": "<string>"
}
'import requests
url = "https://int-api.mx.com/users/{user_guid}/members"
payload = {
"client_redirect_url": "https://{yoursite.com}",
"enable_app2app": False,
"referral_source": "APP",
"ui_message_webview_url_scheme": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
client_redirect_url: 'https://{yoursite.com}',
enable_app2app: false,
referral_source: 'APP',
ui_message_webview_url_scheme: '<string>'
})
};
fetch('https://int-api.mx.com/users/{user_guid}/members', 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-api.mx.com/users/{user_guid}/members",
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([
'client_redirect_url' => 'https://{yoursite.com}',
'enable_app2app' => false,
'referral_source' => 'APP',
'ui_message_webview_url_scheme' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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://int-api.mx.com/users/{user_guid}/members"
payload := strings.NewReader("{\n \"client_redirect_url\": \"https://{yoursite.com}\",\n \"enable_app2app\": false,\n \"referral_source\": \"APP\",\n \"ui_message_webview_url_scheme\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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://int-api.mx.com/users/{user_guid}/members")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"client_redirect_url\": \"https://{yoursite.com}\",\n \"enable_app2app\": false,\n \"referral_source\": \"APP\",\n \"ui_message_webview_url_scheme\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-api.mx.com/users/{user_guid}/members")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"client_redirect_url\": \"https://{yoursite.com}\",\n \"enable_app2app\": false,\n \"referral_source\": \"APP\",\n \"ui_message_webview_url_scheme\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"member": {
"aggregated_at": "2016-10-13T18:07:57.000Z",
"background_aggregation_is_disabled": false,
"connection_status": "CONNECTED",
"connection_status_message": "Connected to MX Bank",
"guid": "MBR-7c6f361b-e582-15b6-60c0-358f12466b4b",
"id": "unique_id",
"institution_code": "mxbank",
"institution_guid": "INST-12345678-90ab-cdef-1234-567890abcdef",
"is_being_aggregated": false,
"is_managed_by_user": false,
"is_manual": false,
"is_oauth": false,
"metadata": "\\\"credentials_last_refreshed_at\\\": \\\"2015-10-15\\",
"most_recent_job_detail_code": null,
"most_recent_job_detail_text": null,
"most_recent_job_guid": "JOB-12345678-90ab-cdef-1234-567890abcdef",
"name": "MX Bank",
"needs_updated_credentials": false,
"oauth_window_uri": "https://mxbank.mx.com/oauth/authorize?client_id=b8OikQ4Ep3NuSUrQ13DdvFuwpNx-qqoAsJDVAQCyLkQ&redirect_uri=https%3A%2F%2Fint-app.moneydesktop.com%2Foauth%2Fredirect_from&response_type=code&scope=openid&state=d745bd4ee6f0f9c184757f574bcc2df2",
"successfully_aggregated_at": "2016-10-13T17:57:38.000Z",
"use_cases": [
"PFM"
],
"user_guid": "USR-fa7537f3-48aa-a683-a02a-b18940482f54",
"user_id": "user123"
}
}{
"member": {
"aggregated_at": "2016-10-13T18:07:57.000Z",
"background_aggregation_is_disabled": false,
"connection_status": "CONNECTED",
"connection_status_message": "Connected to MX Bank",
"guid": "MBR-7c6f361b-e582-15b6-60c0-358f12466b4b",
"id": "unique_id",
"institution_code": "mxbank",
"institution_guid": "INST-12345678-90ab-cdef-1234-567890abcdef",
"is_being_aggregated": false,
"is_managed_by_user": false,
"is_manual": false,
"is_oauth": false,
"metadata": "\\\"credentials_last_refreshed_at\\\": \\\"2015-10-15\\",
"most_recent_job_detail_code": null,
"most_recent_job_detail_text": null,
"most_recent_job_guid": "JOB-12345678-90ab-cdef-1234-567890abcdef",
"name": "MX Bank",
"needs_updated_credentials": false,
"oauth_window_uri": "https://mxbank.mx.com/oauth/authorize?client_id=b8OikQ4Ep3NuSUrQ13DdvFuwpNx-qqoAsJDVAQCyLkQ&redirect_uri=https%3A%2F%2Fint-app.moneydesktop.com%2Foauth%2Fredirect_from&response_type=code&scope=openid&state=d745bd4ee6f0f9c184757f574bcc2df2",
"successfully_aggregated_at": "2016-10-13T17:57:38.000Z",
"use_cases": [
"PFM"
],
"user_guid": "USR-fa7537f3-48aa-a683-a02a-b18940482f54",
"user_id": "user123"
}
}Create member
curl --request POST \
--url https://int-api.mx.com/users/{user_guid}/members \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"client_redirect_url": "https://{yoursite.com}",
"enable_app2app": false,
"referral_source": "APP",
"ui_message_webview_url_scheme": "<string>"
}
'import requests
url = "https://int-api.mx.com/users/{user_guid}/members"
payload = {
"client_redirect_url": "https://{yoursite.com}",
"enable_app2app": False,
"referral_source": "APP",
"ui_message_webview_url_scheme": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
client_redirect_url: 'https://{yoursite.com}',
enable_app2app: false,
referral_source: 'APP',
ui_message_webview_url_scheme: '<string>'
})
};
fetch('https://int-api.mx.com/users/{user_guid}/members', 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-api.mx.com/users/{user_guid}/members",
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([
'client_redirect_url' => 'https://{yoursite.com}',
'enable_app2app' => false,
'referral_source' => 'APP',
'ui_message_webview_url_scheme' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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://int-api.mx.com/users/{user_guid}/members"
payload := strings.NewReader("{\n \"client_redirect_url\": \"https://{yoursite.com}\",\n \"enable_app2app\": false,\n \"referral_source\": \"APP\",\n \"ui_message_webview_url_scheme\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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://int-api.mx.com/users/{user_guid}/members")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"client_redirect_url\": \"https://{yoursite.com}\",\n \"enable_app2app\": false,\n \"referral_source\": \"APP\",\n \"ui_message_webview_url_scheme\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-api.mx.com/users/{user_guid}/members")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"client_redirect_url\": \"https://{yoursite.com}\",\n \"enable_app2app\": false,\n \"referral_source\": \"APP\",\n \"ui_message_webview_url_scheme\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"member": {
"aggregated_at": "2016-10-13T18:07:57.000Z",
"background_aggregation_is_disabled": false,
"connection_status": "CONNECTED",
"connection_status_message": "Connected to MX Bank",
"guid": "MBR-7c6f361b-e582-15b6-60c0-358f12466b4b",
"id": "unique_id",
"institution_code": "mxbank",
"institution_guid": "INST-12345678-90ab-cdef-1234-567890abcdef",
"is_being_aggregated": false,
"is_managed_by_user": false,
"is_manual": false,
"is_oauth": false,
"metadata": "\\\"credentials_last_refreshed_at\\\": \\\"2015-10-15\\",
"most_recent_job_detail_code": null,
"most_recent_job_detail_text": null,
"most_recent_job_guid": "JOB-12345678-90ab-cdef-1234-567890abcdef",
"name": "MX Bank",
"needs_updated_credentials": false,
"oauth_window_uri": "https://mxbank.mx.com/oauth/authorize?client_id=b8OikQ4Ep3NuSUrQ13DdvFuwpNx-qqoAsJDVAQCyLkQ&redirect_uri=https%3A%2F%2Fint-app.moneydesktop.com%2Foauth%2Fredirect_from&response_type=code&scope=openid&state=d745bd4ee6f0f9c184757f574bcc2df2",
"successfully_aggregated_at": "2016-10-13T17:57:38.000Z",
"use_cases": [
"PFM"
],
"user_guid": "USR-fa7537f3-48aa-a683-a02a-b18940482f54",
"user_id": "user123"
}
}{
"member": {
"aggregated_at": "2016-10-13T18:07:57.000Z",
"background_aggregation_is_disabled": false,
"connection_status": "CONNECTED",
"connection_status_message": "Connected to MX Bank",
"guid": "MBR-7c6f361b-e582-15b6-60c0-358f12466b4b",
"id": "unique_id",
"institution_code": "mxbank",
"institution_guid": "INST-12345678-90ab-cdef-1234-567890abcdef",
"is_being_aggregated": false,
"is_managed_by_user": false,
"is_manual": false,
"is_oauth": false,
"metadata": "\\\"credentials_last_refreshed_at\\\": \\\"2015-10-15\\",
"most_recent_job_detail_code": null,
"most_recent_job_detail_text": null,
"most_recent_job_guid": "JOB-12345678-90ab-cdef-1234-567890abcdef",
"name": "MX Bank",
"needs_updated_credentials": false,
"oauth_window_uri": "https://mxbank.mx.com/oauth/authorize?client_id=b8OikQ4Ep3NuSUrQ13DdvFuwpNx-qqoAsJDVAQCyLkQ&redirect_uri=https%3A%2F%2Fint-app.moneydesktop.com%2Foauth%2Fredirect_from&response_type=code&scope=openid&state=d745bd4ee6f0f9c184757f574bcc2df2",
"successfully_aggregated_at": "2016-10-13T17:57:38.000Z",
"use_cases": [
"PFM"
],
"user_guid": "USR-fa7537f3-48aa-a683-a02a-b18940482f54",
"user_id": "user123"
}
}/institutions/{institution_code}/credentials endpoint. If successful, the MX Platform API will respond with the newly-created member object. Once you successfully create a member, MX will immediately validate the provided credentials and attempt to aggregate data for accounts and transactions.Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Headers
The base64 encoded string defined in this header will be returned in the Member and Member Data Updated webhooks. This allows you to trace user interactions and workflows initiated externally and internally in the MX Platform. Max 1024 characters.
Path Parameters
The unique identifier for a user, beginning with the prefix USR-.
Body
Member object to be created with optional parameters (id and metadata) and required parameters (credentials and institution_code)
"https://{yoursite.com}"
This indicates whether OAuth app2app behavior is enabled for institutions that support it. Defaults to true. When set to false, any oauth_window_uri generated will not direct the end user to the institution's mobile application. This setting is not persistent. This setting currently only affects Chase institutions.
false
Hide child attributes
Hide child attributes
"mxbank"
false
"unique_id"
false
"\\\"credentials_last_refreshed_at\\\": \\\"2015-10-15\\"
false
The use case associated with the member. Valid values are PFM and/or MONEY_MOVEMENT. Only set this if you've met with MX and have opted in to using this field.
MONEY_MOVEMENT, PFM ["PFM"]
"APP"
Response
OK
Hide child attributes
Hide child attributes
"2016-10-13T18:07:57.000Z"
false
"CONNECTED"
"Connected to MX Bank"
"MBR-7c6f361b-e582-15b6-60c0-358f12466b4b"
"unique_id"
"mxbank"
"INST-12345678-90ab-cdef-1234-567890abcdef"
false
false
false
false
"\\\"credentials_last_refreshed_at\\\": \\\"2015-10-15\\"
null
null
"JOB-12345678-90ab-cdef-1234-567890abcdef"
"MX Bank"
false
"https://mxbank.mx.com/oauth/authorize?client_id=b8OikQ4Ep3NuSUrQ13DdvFuwpNx-qqoAsJDVAQCyLkQ&redirect_uri=https%3A%2F%2Fint-app.moneydesktop.com%2Foauth%2Fredirect_from&response_type=code&scope=openid&state=d745bd4ee6f0f9c184757f574bcc2df2"
"2016-10-13T17:57:38.000Z"
The use case associated with the member. Valid values are PFM and/or MONEY_MOVEMENT. Only set this if you've met with MX and have opted in to using this field.
MONEY_MOVEMENT, PFM ["PFM"]
"USR-fa7537f3-48aa-a683-a02a-b18940482f54"
"user123"

