Skip to main content
PUT
/
users
/
{user_guid}
/
transaction_rules
/
{transaction_rule_guid}
Update transaction rule
curl --request PUT \
  --url https://int-api.mx.com/users/{user_guid}/transaction_rules/{transaction_rule_guid} \
  --header 'Accept-Version: <accept-version>' \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "transaction_rule": {
    "category_guid": "CAT-b6d61a19-30a7-e852-2703-bdfb4072289e",
    "description": "Wal-mart food storage",
    "match_description": "Wal-mart"
  }
}
'
import requests

url = "https://int-api.mx.com/users/{user_guid}/transaction_rules/{transaction_rule_guid}"

payload = { "transaction_rule": {
"category_guid": "CAT-b6d61a19-30a7-e852-2703-bdfb4072289e",
"description": "Wal-mart food storage",
"match_description": "Wal-mart"
} }
headers = {
"Accept-Version": "<accept-version>",
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}

response = requests.put(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'PUT',
headers: {
'Accept-Version': '<accept-version>',
Authorization: 'Basic <encoded-value>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
transaction_rule: {
category_guid: 'CAT-b6d61a19-30a7-e852-2703-bdfb4072289e',
description: 'Wal-mart food storage',
match_description: 'Wal-mart'
}
})
};

fetch('https://int-api.mx.com/users/{user_guid}/transaction_rules/{transaction_rule_guid}', 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}/transaction_rules/{transaction_rule_guid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'transaction_rule' => [
'category_guid' => 'CAT-b6d61a19-30a7-e852-2703-bdfb4072289e',
'description' => 'Wal-mart food storage',
'match_description' => 'Wal-mart'
]
]),
CURLOPT_HTTPHEADER => [
"Accept-Version: <accept-version>",
"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}/transaction_rules/{transaction_rule_guid}"

payload := strings.NewReader("{\n \"transaction_rule\": {\n \"category_guid\": \"CAT-b6d61a19-30a7-e852-2703-bdfb4072289e\",\n \"description\": \"Wal-mart food storage\",\n \"match_description\": \"Wal-mart\"\n }\n}")

req, _ := http.NewRequest("PUT", url, payload)

req.Header.Add("Accept-Version", "<accept-version>")
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.put("https://int-api.mx.com/users/{user_guid}/transaction_rules/{transaction_rule_guid}")
.header("Accept-Version", "<accept-version>")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"transaction_rule\": {\n \"category_guid\": \"CAT-b6d61a19-30a7-e852-2703-bdfb4072289e\",\n \"description\": \"Wal-mart food storage\",\n \"match_description\": \"Wal-mart\"\n }\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://int-api.mx.com/users/{user_guid}/transaction_rules/{transaction_rule_guid}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Accept-Version"] = '<accept-version>'
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"transaction_rule\": {\n \"category_guid\": \"CAT-b6d61a19-30a7-e852-2703-bdfb4072289e\",\n \"description\": \"Wal-mart food storage\",\n \"match_description\": \"Wal-mart\"\n }\n}"

response = http.request(request)
puts response.read_body
{
  "transaction_rule": {
    "category_guid": "CAT-b6d61a19-30a7-e852-2703-bdfb4072289e",
    "created_at": "2025-02-13T18:08:00+00:00",
    "description": "Wal-mart food storage",
    "guid": "TXR-a080e0f9-a2d4-4d6f-9e03-672cc357a4d3",
    "match_description": "Wal-mart",
    "updated_at": "2025-02-13T18:09:00+00:00",
    "user_guid": "USR-fa7537f3-48aa-a683-a02a-b18940482f54"
  }
}
Use this endpoint to update the attributes of a specific transaction rule based on its unique GUID. The API will respond with the updated transaction_rule object. Any attributes not provided will be left unchanged. For more information about transaction rules, see the Transaction Rules Guide.

Authorizations

Authorization
string
header
required

The MX Platform API requires basic access authentication using your client_id and api_key. These credentials must be Base64 encoded and included in the Authorization header of each API request to ensure secure access.

Here's an example using curl to access v20250224. Replace https://int-api.mx.com/endpoint with the actual API endpoint you wish to access and your Base64 encoded client_id and api_key.

curl -L -X POST `https://int-api.mx.com/endpoint' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Accept-Version: v20250224'
-H 'Authorization: Basic BASE_64_ENCODING_OF{client_id:api_key}'

Headers

Accept-Version
string
default:v20250224
required

MX Platform API version.

Example:

"v20250224"

Path Parameters

transaction_rule_guid
string
required

The unique id for a transaction_rule.

user_guid
string
required

The unique identifier for a user, beginning with the prefix USR-.

Body

application/json

TransactionRule object to be updated

transaction_rule
object

Response

200 - application/json

OK

transaction_rule
object