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

# July Updates

## New Features

### Message-Level Encryption (MLE)

<img src="https://mintcdn.com/methodfinancial/zaEy2Zf5mLkHDuX_/images/enc.jpg?fit=max&auto=format&n=zaEy2Zf5mLkHDuX_&q=85&s=b1c84dbcb2fd516ef856acb208f1d5bf" alt="MLE" width="3840" height="2160" data-path="images/enc.jpg" />

We’ve added support for end-to-end encryption of sensitive data transmitted between your application and Method’s API, available to everyone. Here’s what’s new:

* **Hybrid Encryption:** Uses AES-GCM (for payload encryption) and RSA-OAEP-256 (for key encryption) to ensure confidentiality even if network traffic is intercepted.

* **Public Key Registration:** Register your RSA public key with Method via a `.well-known` endpoint or direct upload.

* **Encrypted Requests & Responses:** Send encrypted payloads using the `Method-MLE: jwe` header; Method encrypts responses using your public key.

* **Key Management:** Support for key rotation, deprecation, deletion, and webhook notifications for Method key changes.

You can find a [quickstart guide here](/reference/message-level-encryption#quickstart). For more information, please refer to the [Message Level Encryption documentation](/reference/message-level-encryption).

### Card Brand API

<img src="https://mintcdn.com/methodfinancial/zaEy2Zf5mLkHDuX_/images/card-art.jpg?fit=max&auto=format&n=zaEy2Zf5mLkHDuX_&q=85&s=fc0dfa25f823766bc443936771695402" alt="Card Brands" width="3840" height="2160" data-path="images/card-art.jpg" />

We’ve expanded the Card Brand object to provide a more structured format with richer brand details — making it easier to identify, display, and integrate specific card products with consistent issuer, network, and branding data.

<Note>Available when passing `Method-Version: 2025-07-04` in the request header.</Note>

<Accordion title="Previous">
  ```json theme={null}
  {
    "id": "cbrd_eVMDNUPfrFk3e",
    "account_id": "acc_yVf3mkzbhz9tj",
    "network": "visa",
    "issuer": "Chase",
    "last4": "8623",
    "brands": [
      {
        "id": "brand_AMxtjQzAfDCRP",
        "name": "Chase Sapphire Reserve",
        "url": "https://static.methodfi.com/card_brands/1b7ccaba6535cb837f802d968add4700.png"
      }
    ],
    "status": "completed",
    "shared": false,
    "source": "network",
    "error": null,
    "created_at": "2024-03-19T01:05:37.247Z",
    "updated_at": "2024-03-19T01:05:37.247Z"
  }
  ```
</Accordion>

<Accordion title="New">
  ```json theme={null}
  {
    "id": "cbrd_Accm7P6t6mYQP",
    "account_id": "acc_LxwEqNicr66yP",
    "brands": [
      {
        "id": "pdt_15_brd_1",
        "card_product_id": "pdt_15",
        "description": "Chase Sapphire Reserve",
        "name": "Chase Sapphire Reserve",
        "issuer": "Chase",
        "network": "visa",
        "network_tier": "infinite",
        "type": "specific",
        "url": "https://static.methodfi.com/card_brands/1b7ccaba6535cb837f802d968add4700.png"
      }
    ],
    "status": "completed",
    "source": "method",
    "error": null,
    "created_at": "2025-08-12T00:56:50.139Z",
    "updated_at": "2025-08-12T00:56:50.139Z"
  }
  ```
</Accordion>

**Key Changes**:

* `network` and `issuer` are now nested inside each brand object.
* Added `card_product_id`, `description`, and `type` fields.
* Removed `last4` and `shared` fields.

For more information, please refer to the [Card Brand API](/reference/accounts/card-brands/overview).

### Card Products API

We've added a new `Card Products` directory accesible via our API allowing you to retrieve all `Card Brand` objects associated with a given `Card Product`.

<Note>Available when passing `Method-Version: 2025-07-04` in the request header.</Note>

<Accordion title="Example Request">
  ```bash cURL theme={null}
  curl https://production.methodfi.com/card_products/pdt_17 \
    -H "Method-Version: 2025-07-04" \
    -H "Authorization: Bearer sk_WyZEWVfTcH7GqmPzUPk65Vjc"
  ```
</Accordion>

<Accordion title="Example Response">
  ```json theme={null}
  {
    "id": "pdt_17",
    "name": "Chase Freedom",
    "issuer": "Chase",
    "type": "specific",
    "brands": [
      {
          "id": "pdt_17_brd_1",
          "description": "Chase Freedom",
          "network": "visa",
          "network_tier": "signature",
          "default_image": "https://static.methodfi.com/card_brands/fb5fbd6a5d45b942752b9dc641b93d1f.png"
      },
      {
        "id": "pdt_17_brd_2",
        "description": "Chase Freedom",
        "network": "visa",
        "network_tier": "standard",
        "default_image": "https://static.methodfi.com/card_brands/6cb697528b0771f982f7c0e8b8869de3.png"
      }
    ]
  }
  ```
</Accordion>

For more information, please refer to the [Card Products API](/reference/card-products/overview).

## Improvements

### Connect API

We now support asynchronous Connect requests. You'll receive a `connect.available` webhook when an Async Connect is completed. Async Connect requests can be created by either:

* Setting the `Prefer: respond-async` header
* Specifying `products` and / or `subscriptions` in the request body

The Connect object will now include `requested_products` and `requested_subscriptions` fields in the response body.

<Accordion title="Example Request">
  ```bash cURL theme={null}
  curl https://production.methodfi.com/entities/ent_qKNBB68bfHGNA/connect \
    -X POST \
    -H "Prefer: respond-async" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer sk_WyZEWVfTcH7GqmPzUPk65Vjc" \
    -d '{
      "requested_products": ["card_brand"],
      "requested_subscriptions": ["card_brand"]
    }'
  ```
</Accordion>

<Accordion title="Example Response after Connect is completed">
  ```json theme={null}
  {
    "id": "cxn_4ewMmBbjYDMR4",
    "entity_id": "ent_qKNBB68bfHGNA",
    "status": "completed",
    "accounts": [
      "acc_eKKmrXDpJBKgw",
      "acc_GV8WbmJW7KGRy",
      "acc_MLPKh9gQDDbT8",
      "acc_LbXE8wVYJLrKt",
      "acc_J3P9fayDFjpAy",
      "acc_eFFRV9zmpLREK"
    ],
    "requested_products": ["card_brand"],
    "requested_subscriptions": ["card_brand"],
    "error": null,
    "created_at": "2024-04-12T14:56:46.645Z",
    "updated_at": "2024-04-12T14:56:46.645Z"
  }
  ```
</Accordion>

For more information, please refer to the [Connect API](/reference/entities/connect/overview).

### Webhook API

We've added a new `refs` object to webhook payloads. This object contains the `entity` ID of the Entity that the webhook is related to.

<Accordion title="Example Webhook Payload">
  ```json theme={null}
  {
    "webhook_id": "whk_cSGjA6d9N8y8R",
    "id": "pmt_zR3nJG3c99P3X",
    "type": "payment.update",
    "op": "update",
    "path": "/payments/pmt_zR3nJG3c99P3X",
    "event": "evt_knqJgxKUnqDVJ",
    "refs": {
      "entity": "ent_qKNBB68bfHGNA"
    }
  }
  ```
</Accordion>

We have also added the following new webhooks:

* `card_brand.available`
* `connect.available`
* `method_jwk.create`
* `method_jwk.update`

For more information, please refer to the [Webhooks API](/reference/webhooks/overview).

### Entity and Account Products

The `product_id` field in the `Product` object and the Retrieve endpoint are now deprecated. We've added the `latest_successful_request_id` field to the `Product` object. This field will contain the ID of the most recently successful Product resource.

For more information, please refer to the [Entity Products API](/reference/entities/products/overview) and [Account Products API](/reference/accounts/products/overview).
