curl --request POST \
--url https://int-api.mx.com/users \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"user": {
"email": "email@provider.com",
"id": "My-Unique-ID",
"is_disabled": false,
"metadata": "{\\\"type\\\": \\\"individual\\\", \\\"status\\\": \\\"preferred\\\"}"
}
}
'import requests
url = "https://int-api.mx.com/users"
payload = { "user": {
"email": "email@provider.com",
"id": "My-Unique-ID",
"is_disabled": False,
"metadata": "{\\"type\\": \\"individual\\", \\"status\\": \\"preferred\\"}"
} }
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({
user: {
email: 'email@provider.com',
id: 'My-Unique-ID',
is_disabled: false,
metadata: '{\"type\": \"individual\", \"status\": \"preferred\"}'
}
})
};
fetch('https://int-api.mx.com/users', 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",
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([
'user' => [
'email' => 'email@provider.com',
'id' => 'My-Unique-ID',
'is_disabled' => false,
'metadata' => '{\\"type\\": \\"individual\\", \\"status\\": \\"preferred\\"}'
]
]),
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"
payload := strings.NewReader("{\n \"user\": {\n \"email\": \"email@provider.com\",\n \"id\": \"My-Unique-ID\",\n \"is_disabled\": false,\n \"metadata\": \"{\\\\\\\"type\\\\\\\": \\\\\\\"individual\\\\\\\", \\\\\\\"status\\\\\\\": \\\\\\\"preferred\\\\\\\"}\"\n }\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")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"user\": {\n \"email\": \"email@provider.com\",\n \"id\": \"My-Unique-ID\",\n \"is_disabled\": false,\n \"metadata\": \"{\\\\\\\"type\\\\\\\": \\\\\\\"individual\\\\\\\", \\\\\\\"status\\\\\\\": \\\\\\\"preferred\\\\\\\"}\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-api.mx.com/users")
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 \"user\": {\n \"email\": \"email@provider.com\",\n \"id\": \"My-Unique-ID\",\n \"is_disabled\": false,\n \"metadata\": \"{\\\\\\\"type\\\\\\\": \\\\\\\"individual\\\\\\\", \\\\\\\"status\\\\\\\": \\\\\\\"preferred\\\\\\\"}\"\n }\n}"
response = http.request(request)
puts response.read_body{
"user": {
"email": "email@provider.com",
"guid": "USR-d74cb14f-fd0a-449f-991b-e0362a63d9c6",
"id": "My-Unique-ID",
"is_disabled": false,
"metadata": "{\\\"first_name\\\": \\\"Steven\\\", \\\"last_name\\\": \\\"Universe\\\"}"
}
}Create user
Use this endpoint to create a new user. The API will respond with the newly-created user object if successful, containing a guid that you’ll set as the user_guid in other requests when required. Disabling a user means that accounts and transactions associated with it will not be updated in the background by MX. It will also restrict access to that user’s data until they are no longer disabled.
curl --request POST \
--url https://int-api.mx.com/users \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"user": {
"email": "email@provider.com",
"id": "My-Unique-ID",
"is_disabled": false,
"metadata": "{\\\"type\\\": \\\"individual\\\", \\\"status\\\": \\\"preferred\\\"}"
}
}
'import requests
url = "https://int-api.mx.com/users"
payload = { "user": {
"email": "email@provider.com",
"id": "My-Unique-ID",
"is_disabled": False,
"metadata": "{\\"type\\": \\"individual\\", \\"status\\": \\"preferred\\"}"
} }
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({
user: {
email: 'email@provider.com',
id: 'My-Unique-ID',
is_disabled: false,
metadata: '{\"type\": \"individual\", \"status\": \"preferred\"}'
}
})
};
fetch('https://int-api.mx.com/users', 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",
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([
'user' => [
'email' => 'email@provider.com',
'id' => 'My-Unique-ID',
'is_disabled' => false,
'metadata' => '{\\"type\\": \\"individual\\", \\"status\\": \\"preferred\\"}'
]
]),
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"
payload := strings.NewReader("{\n \"user\": {\n \"email\": \"email@provider.com\",\n \"id\": \"My-Unique-ID\",\n \"is_disabled\": false,\n \"metadata\": \"{\\\\\\\"type\\\\\\\": \\\\\\\"individual\\\\\\\", \\\\\\\"status\\\\\\\": \\\\\\\"preferred\\\\\\\"}\"\n }\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")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"user\": {\n \"email\": \"email@provider.com\",\n \"id\": \"My-Unique-ID\",\n \"is_disabled\": false,\n \"metadata\": \"{\\\\\\\"type\\\\\\\": \\\\\\\"individual\\\\\\\", \\\\\\\"status\\\\\\\": \\\\\\\"preferred\\\\\\\"}\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-api.mx.com/users")
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 \"user\": {\n \"email\": \"email@provider.com\",\n \"id\": \"My-Unique-ID\",\n \"is_disabled\": false,\n \"metadata\": \"{\\\\\\\"type\\\\\\\": \\\\\\\"individual\\\\\\\", \\\\\\\"status\\\\\\\": \\\\\\\"preferred\\\\\\\"}\"\n }\n}"
response = http.request(request)
puts response.read_body{
"user": {
"email": "email@provider.com",
"guid": "USR-d74cb14f-fd0a-449f-991b-e0362a63d9c6",
"id": "My-Unique-ID",
"is_disabled": false,
"metadata": "{\\\"first_name\\\": \\\"Steven\\\", \\\"last_name\\\": \\\"Universe\\\"}"
}
}Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Body
User object to be created. (None of these parameters are required, but the user object cannot be empty)
Response
OK
Hide child attributes
Hide child attributes
"email@provider.com"
"USR-d74cb14f-fd0a-449f-991b-e0362a63d9c6"
"My-Unique-ID"
false
"{\\\"first_name\\\": \\\"Steven\\\", \\\"last_name\\\": \\\"Universe\\\"}"

