Portfolio Intelligence is a separately enabled product. Contact your Method CSM to enable
portfolio_intelligence on your environment.How It Works
Enroll an Entity
Enrolling an entity in Portfolio Intelligence is a single API call: subscribe the entity to the Once
attribute subscription and pass the full Portfolio Intelligence bundle via requested_attributes. Once enrolled, all accounts associated with that entity become eligible for attribute generation — you do not need to enroll accounts individually.status is active, Method begins pulling data directly from the entity’s financial institutions and attribute generation begins.Receive Entity-Level Attributes
Entity-level attributes aggregate signals across all of the entity’s accounts — a holistic view of the borrower’s total debt burden, payment behavior, and utilization trajectory. As of The request returns immediately with When processing completes, Method fires an A representative subset is shown above. Balance values are in cents; utilization is a percentage (
2026-03-30, the Attributes endpoint is asynchronous and automatically computes all available attributes (no request body needed). Trigger a fresh computation with:status: "in_progress":entity_attribute.update webhook. Retrieve the completed attribute object via GET /entities/{ent_id}/attributes/{attr_id}. A completed response includes every attribute enrolled via requested_attributes. Attributes that could not be computed return value: null with an error object (e.g. ENTITY_ATTRIBUTE_INSUFFICIENT_DATA):37.4 = 37.4%); deltas are percentage points; trends are enums (up, down, flat).In this example, the borrower is a revolver carrying $14,200 in credit card debt against a $38,000 limit — but the 30-day balance change of −$1,850 and a declining utilization trend indicate active paydown. The payment_to_minimum_ratio of 1.4 confirms they are paying above the minimum, a positive behavioral signal.Receive Account-Level Attributes
For drill-down analysis on a specific account, use the account-level attributes endpoint. This is useful for account-specific risk flags, targeted cross-sell logic, or when you need per-card detail rather than an aggregated entity view. Account-level attribute names are simplified (no type prefix) because the attributes returned depend on the account’s liability type.Method fires an Even if the entity’s aggregate utilization looks healthy, this account is at 61% and climbing (
account_attribute.update webhook on completion. Retrieve the completed object via GET /accounts/{acc_id}/attributes/{acc_attr_id}. For a credit card account, the response includes the full set of credit-card-eligible attributes — attributes that can’t be computed (e.g. trends/deltas with insufficient history) return value: null with an ACCOUNT_ATTRIBUTE_INSUFFICIENT_DATA error:utilization_delta_30d of +9 percentage points) — a risk signal that would be masked by entity-level aggregation alone. Personal loan and mortgage accounts return a different attribute set — see the reference for the per-liability-type breakdown.Monitoring Use Cases
Delinquency Early Warning
Portfolio Intelligence detects delinquency signals 30–45 days faster than bureau-only approaches, because direct sync reflects the account state within roughly one week of the missed payment event — before the lender reports to the bureau. Watch for:delinquency_flag_credit_cards→true(entity) ordelinquency_flag→true(account)revolving_credit_card_utilization_delta_30d> +30 (30+ pp rapid accumulation)payment_to_minimum_ratio_avg_credit_cardsapproaching 1.0 (paying only minimums)usage_patternshifting fromtransactortorevolver
Credit Line Increase Eligibility
A borrower demonstrating sustained paydown is a CLI candidate. Trigger a review when:revolving_credit_card_balance_change_90dis negative (consistent paydown)revolving_credit_card_utilization_delta_90d< −20 (20+ pp improvement)credit_card_utilizationdrops below your threshold (e.g., < 30)payment_to_minimum_ratio_avg_credit_cards> 2.0
Refinance & Consolidation Retargeting
When a borrower’s debt profile improves post-origination, use PI attributes to surface them for a new offer:weighted_average_apr_credit_cardreveals the blended rate on outstanding revolving debtmonthly_installments_estimate_personal_loanscalculates real-dollar savings at your offered raterevolving_credit_card_balance_change_30dconfirms they’re actively managing their debt
monthly_installments_estimate of ~$340/month. Your 9.5% personal loan offer reduces that to ~$190 — a $150/month savings you can surface in a targeted campaign.
Attribute Availability by Level
Some attributes are only meaningful in aggregate and are available at the entity level only. Others can be computed per-account.| Category | Attribute | Entity | Account |
|---|---|---|---|
| Core Balances | revolving_credit_card_balance_total | ✓ | — |
personal_loan_balance_total | ✓ | — | |
mortgage_balance_total | ✓ | — | |
installment_balance_total | ✓ | — | |
revolving_credit_card_balance_change_30d | ✓ | — | |
revolving_credit_card_balance_change_60d | ✓ | — | |
revolving_credit_card_balance_change_90d | ✓ | — | |
| Utilization | credit_card_utilization | ✓ | ✓ |
personal_loan_utilization | ✓ | ✓ | |
overall_utilization | ✓ | — | |
revolving_credit_card_utilization_trend_30d | ✓ | ✓ | |
revolving_credit_card_utilization_trend_90d | ✓ | ✓ | |
revolving_credit_card_utilization_delta_30d | ✓ | ✓ | |
revolving_credit_card_utilization_delta_60d | ✓ | ✓ | |
revolving_credit_card_utilization_delta_90d | ✓ | ✓ | |
overall_utilization_trend_30d | ✓ | — | |
overall_utilization_delta_30d | ✓ | — | |
credit_limit_total | ✓ | — | |
| Payment Behavior | usage_pattern | ✓ | ✓ |
payment_to_minimum_ratio_avg_credit_cards | ✓ | — | |
next_payment_minimum_total_credit_cards | ✓ | — | |
| Delinquency | delinquency_flag_credit_cards | ✓ | ✓ |
| APR | weighted_average_apr_credit_card | ✓ | — |
weighted_average_apr_personal_loan | ✓ | — | |
weighted_average_apr_mortgage | ✓ | — | |
| Opportunity | monthly_installments_estimate_personal_loans | ✓ | ✓ |
Attributes marked entity-only require cross-account aggregation and cannot be computed for a single account in isolation.
Webhooks
Method fires a webhook when an Attribute request completes or updated data is available for a PI-enrolled entity or account. Use these to trigger monitoring workflows without polling. Entity Attribute Webhook:.create variants (entity_attribute.create, account_attribute.create) fire once on initial computation, and .update fires thereafter whenever PI surfaces new values for a PI-enrolled entity or account.
Putting It All Together
| Monitoring goal | Endpoint | Key attributes |
|---|---|---|
| Total debt exposure | Entity attributes | revolving_credit_card_balance_total, installment_balance_total, mortgage_balance_total |
| Debt trajectory | Entity attributes | revolving_credit_card_balance_change_30d/60d/90d |
| Utilization health | Entity + Account | credit_card_utilization, revolving_credit_card_utilization_trend_30d |
| Payment behavior | Entity attributes | usage_pattern, payment_to_minimum_ratio_avg_credit_cards |
| Delinquency detection | Entity + Account | delinquency_flag_credit_cards (entity), delinquency_flag (account) |
| Refinance opportunity | Entity attributes | weighted_average_apr_credit_card, monthly_installments_estimate_personal_loans |
| Account-level drill-down | Account attributes | Any account-eligible attribute from the table above |
Attributes Guide
Full list of available attributes, how they’re computed, and endpoint details.
Subscriptions Guide
Deep dive into subscription types and webhook payloads.
Entity Attributes API
API reference for pulling entity-level attributes.
Lending Overview
Return to the lending use case overview.