> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mx.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Migration Guide

> This overview lists the breaking changes in Platform API v20250224.

<Warning>
  After August 12, 2026, all Platform API calls must pass a new `Accept-Version` header. Until that date, version information sent in the `Accept` header will continue to work.
</Warning>

## Migration Overview

Details needed to migrate from all previous versions are included in linked reference sections.

1. All Platform API users must [update request headers](#request-headers) for all endpoints.
2. Update `institution` queries and responses with the new `supported_products` array. See [Set Products](#set-products). The following individual query and response fields are deprecated:
   * `supports_account_identification`
   * `supports_account_statement`
   * `supports_account_verification`
   * `supports_transaction_history`
3. Some endpoints now set products for aggregation using `data_request`. See [Data request products array](#data-request-products-array)
   * **Request Widget URL endpoint**. When requesting the Connect Widget URL, the following configuration parameters are no longer used in the body of the request:
     * `mode`
     * `disable_background_agg`
     * `include_identity`
     * `include_transactions`
   * **Create Member endpoint**. The following configuration parameters are no longer used in the body of the request:
     * `background_aggregation_is_disabled`
     * `skip_aggregation`
4. To use the endpoints (listed above) for `supported_products` and `data_request.products`, arrays accept or return the following products/values:
   * Instant Account Verification: `account_verification`
   * Account Owner Identification: `identity_verification`
   * Account Aggregation: `transactions`
   * Extended History: `transaction_history`
   * Statements: `statements`
   * Investments: `investments`
   * Rewards: `rewards`
5. Managed data endpoints have been deprecated:
   * `/managed_institutions`
   * `/users/{user_guid}/managed_members`
   * `/users/{user_guid}/managed_members/{member_guid}`
   * `/users/{user_guid}/managed_members/{member_guid}/accounts`
   * `/users/{user_guid}/managed_members/{member_guid}/accounts/{account_guid}`
   * `/users/{user_guid}/managed_members/{member_guid}/accounts/{account_guid}/transactions`
   * `/users/{user_guid}/managed_members/{member_guid}/accounts/{account_guid}/transactions/{transaction_guid}`

For more details on each of these changes, please reference the sections below.

## Request Headers

Modify your `Accept` request headers to `application/json` and add an `Accept-Version` header set to v20250224.

This change is required for all requests and must be implemented by August 12, 2026.

```bash Example theme={null}
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}'
```

### Unified Product Ordering

[Unified Product Ordering](/products/connectivity/overview/intro-to-unified-product-ordering/) beta users must replace the beta header:

```bash theme={null}
-H 'Accept: application/vnd.mx.api.v1+json; version=v20250224'
```

Use the new version header:

```bash theme={null}
-H 'Accept: application/json'
-H 'Accept-Version: v20250224'
```

## Set Products

### Supported Products Array

Enhanced search and filtering capabilities based on the products supported by each institution. More information provided about the products supported by the institution. Uses the `supported_products` array. See [Product values](#product-values) for a list of values in the `supported_products` array.

**List Institutions**: GET `/institutions`

**Read Institution**: GET `/institutions/{institution_code}`

```bash Query example theme={null}
curl -X GET 'https://api.mx.com/institutions?supported_products[]=account_verification&supported_products[]=transactions' \
-H 'Accept: application/vnd.mx.api.v1+json; version=v20250224' \
-H 'Authorization: Basic BASE_64_ENCODING_OF{client_id:api_key}'
```

```json Response example theme={null}
{
  "institution": {
    "code": "mxbank",
    "forgot_password_url": "https://example.url.mxbank.com/forgot-password",
    "forgot_username_url": "https://example.url.mxbank.com/forgot-username",
    "instructional_text": "Some instructional text <a href=\"https://example.url.mxbank.com/instructions\"\nid=\"instructional_text\">for end users</a>.\n",
    "iso_country_code": null,
    "medium_logo_url": "https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/100x100/default_100x100.png",
    "name": "MX Bank",
    "small_logo_url": "https://content.moneydesktop.com/storage/MD_Assets/Ipad%20Logos/50x50/default_50x50.png",
    "supported_products": [
      "account_verification",
      "identity_verification",
      "transactions",
      "transaction_history"
    ],
    "supports_oauth": false,
    "trouble_signing_in_url": null,
    "url": "https://www.mx.com"
  }
}
```

### Data Request Products Array

Initiate the aggregation of any products specified in the body of requests to create members and request Connect Widget URLs in a products array.

**Create Member**: POST `/users/{user_guid}/members`

**Request Widget URL**: POST `/users/{user_guid}/widget_urls`

```bash Request body example theme={null}
curl -L -X POST 'https://int-api.mx.com/users/{user_guid}/members' \
-H 'Content-Type: application/json' \
-H 'Accept: application/vnd.mx.api.v1+json; version=v20250224' \
-H 'Authorization: Basic BASE_64_ENCODING_OF{client_id:api_key}'
--data-raw '{"member":{"institution_code":"mxbank","is_oauth":true,"metadata":"\\\"credentials_last_refreshed_at\\\": \\\"2015-10-15\\\""}, "data_request": {"products": ["account_verification", "identity_verification", "transactions"]}}'
```

Use the `data_request.products` request parameter on the Request Widget URL and Create Member endpoints instead of manually initiating the aggregation of data when a `member` is first created. See [Product values](#product-values) for a list of accepted values in the `data_request` array.

```bash theme={null}
curl -L -X POST 'https://int-api.mx.com/users/{user_guid}/widget_urls' \
-H 'Content-Type: application/json' \
-H 'Accept: application/vnd.mx.api.v1+json; version=v20250224' \
-H 'Authorization: Basic BASE_64_ENCODING_OF{client_id:api_key}'
--data-raw '{"widget_url":{"widget_type":"connect_widget"}, "data_request": {"products": ["account_verification", "identity_verification", "transactions"]}}'
```

### Product Values

Product values in `supported_products` and `data_request.products` arrays include:

| Product                      | Value                   |
| :--------------------------- | :---------------------- |
| Instant Account Verification | `account_verification`  |
| Account Owner Identification | `identity_verification` |
| Account Aggregation          | `transactions`          |
| Extended History             | `transaction_history`   |
| Statements                   | `statements`            |
| Investments                  | `investments`           |

### Manually Initiating Aggregation

You may continue to manually initiate data aggregation with these endpoints:

* Aggregate Member
* Balance Check
* Extend History
* Fetch Statements
* Identify Member
* Verify Member

<Note>
  Balance data is always included and doesn't need to be set.
</Note>

## Deprecated Fields

The `skip_aggregation` field is now deprecated. Aggregation is assumed to be required unless specified otherwise in the `data_request.products` configuration.

The following fields in the **Check Member Status** endpoint response are deprecated:

* `has_processed_account_numbers`
* `has_processed_accounts`
* `has_processed_transactions`

## Deprecated Endpoints

Deprecation of these endpoints should not impact you, but if you have questions, please contact MX.

* `/managed_institutions`
* `/users/{user_guid}/managed_members`
* `/users/{user_guid}/managed_members/{member_guid}`
* `/users/{user_guid}/managed_members/{member_guid}/accounts`
* `/users/{user_guid}/managed_members/{member_guid}/accounts/{account_guid}`
* `/users/{user_guid}/managed_members/{member_guid}/accounts/{account_guid}/transactions`
* `/users/{user_guid}/managed_members/{member_guid}/accounts/{account_guid}/transactions/{transaction_guid}`

## Sunset Endpoints

Previously deprecated endpoints are no longer documented with `v20250224`:

* `/payment_processor_authorization_code`
* `/users/{user_guid}/connect_widget_url`
