curl --request GET \
--url https://int-api.mx.com/categories/default \
--header 'Accept-Version: <accept-version>' \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://int-api.mx.com/categories/default"
headers = {
"Accept-Version": "<accept-version>",
"Authorization": "Basic <encoded-value>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'Accept-Version': '<accept-version>', Authorization: 'Basic <encoded-value>'}
};
fetch('https://int-api.mx.com/categories/default', 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/categories/default",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept-Version: <accept-version>",
"Authorization: Basic <encoded-value>"
],
]);
$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://int-api.mx.com/categories/default"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept-Version", "<accept-version>")
req.Header.Add("Authorization", "Basic <encoded-value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://int-api.mx.com/categories/default")
.header("Accept-Version", "<accept-version>")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-api.mx.com/categories/default")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Accept-Version"] = '<accept-version>'
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body{
"categories": [
{
"created_at": "2025-02-13T18:08:00+00:00",
"guid": "CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874",
"is_default": true,
"is_income": false,
"metadata": "some metadata",
"name": "Auto Insurance",
"parent_guid": "CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874",
"updated_at": "2025-02-13T18:09:00+00:00"
}
],
"pagination": {
"current_page": 1,
"per_page": 25,
"total_entries": 1,
"total_pages": 1
}
}List default categories
Use this endpoint to retrieve a list of all the default categories and subcategories offered within the MX Platform API. In other words, each item in the returned list will have its is_default field set to true. There are currently 119 default categories and subcategories. Both the list default categories and list default categories by user endpoints return the same results. The different routes are provided for convenience.
curl --request GET \
--url https://int-api.mx.com/categories/default \
--header 'Accept-Version: <accept-version>' \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://int-api.mx.com/categories/default"
headers = {
"Accept-Version": "<accept-version>",
"Authorization": "Basic <encoded-value>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'Accept-Version': '<accept-version>', Authorization: 'Basic <encoded-value>'}
};
fetch('https://int-api.mx.com/categories/default', 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/categories/default",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept-Version: <accept-version>",
"Authorization: Basic <encoded-value>"
],
]);
$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://int-api.mx.com/categories/default"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Accept-Version", "<accept-version>")
req.Header.Add("Authorization", "Basic <encoded-value>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://int-api.mx.com/categories/default")
.header("Accept-Version", "<accept-version>")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-api.mx.com/categories/default")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Accept-Version"] = '<accept-version>'
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body{
"categories": [
{
"created_at": "2025-02-13T18:08:00+00:00",
"guid": "CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874",
"is_default": true,
"is_income": false,
"metadata": "some metadata",
"name": "Auto Insurance",
"parent_guid": "CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874",
"updated_at": "2025-02-13T18:09:00+00:00"
}
],
"pagination": {
"current_page": 1,
"per_page": 25,
"total_entries": 1,
"total_pages": 1
}
}Authorizations
To authenticate with the Platform API, include your Base64-encoded client_id and api_key in the Authorization header of every request:
-H 'Authorization: Basic BASE_64_ENCODING_OF{client_id:api_key}'
Headers
MX Platform API version.
"v20260929"
Query Parameters
Results are paginated. Specify current page.
This specifies the number of records to be returned on each page. Defaults to 25. The valid range is from 10 to 100. If the value exceeds 100, the default value of 25 will be used instead.
Response
OK
Hide child attributes
Hide child attributes
The date and time the category was created, represented in ISO 8601 format with a timestamp.
"2025-02-13T18:08:00+00:00"
The unique identifier for the category. Defined by MX.
"CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874"
Indicates whether the category is an MX-created default category. This will always be false for custom categories.
true
Indicates whether the transaction is income.
false
Additional information you stored on the category.
"some metadata"
The name of the category.
"Auto Insurance"
The unique identifier for the parent category. Defined by MX.
"CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874"
The date and time the resource was last updated in ISO 8601 format with a timestamp.
For categories, this field will always be null when is_default is true.
"2025-02-13T18:09:00+00:00"
Hide child attributes
Hide child attributes
The page delivered by the current response.
1
The number of records delivered with each page.
25
The total number of records available.
1
The total number of pages available.
1

