Plaid's banking data API — accounts, transactions, auth, identity and payment initiation.
We already watch this spec — add your email and we'll alert you on every change, breaking ones first. Free, no credit card, one click to stop.
Rebuilt automatically from the official OpenAPI spec. Every entry is a real diff — nothing is hand-written.
version 2020-09-14_1.792.1 → 2020-09-14_1.799.0
| Change | Type | Severity | Why it matters |
|---|---|---|---|
POST /asset_report/get | response 200 nullable changed | Breaking | Response 200 field "report.items[].accounts[].transactions[].credit_category.primary": false → true |
POST /asset_report/get | response 200 nullable changed | Breaking | Response 200 field "report.items[].accounts[].transactions[].credit_category.detailed": false → true |
POST /asset_report/audit_copy/get | response 200 nullable changed | Breaking | Response 200 field "report.items[].accounts[].transactions[].credit_category.primary": false → true |
POST /asset_report/audit_copy/get | response 200 nullable changed | Breaking | Response 200 field "report.items[].accounts[].transactions[].credit_category.detailed": false → true |
POST /cra/monitoring_insights/get | response 200 nullable changed | Breaking | Response 200 field "items[].accounts[].transactions[].credit_category.primary": false → true |
POST /cra/monitoring_insights/get | response 200 nullable changed | Breaking | Response 200 field "items[].accounts[].transactions[].credit_category.detailed": false → true |
POST /cra/monitoring_insights/get | response 200 property removed | Potential | Response 200 field "items[].accounts[].investments": Removed (was optional) |
POST /cra/check_report/base_report/get | response 200 nullable changed | Breaking | Response 200 field "report.items[].accounts[].transactions[].credit_category.primary": false → true |
POST /cra/check_report/base_report/get | response 200 nullable changed | Breaking | Response 200 field "report.items[].accounts[].transactions[].credit_category.detailed": false → true |
POST /cra/check_report/base_report/get | response 200 property removed | Potential | Response 200 field "report.items[].accounts[].investments": Removed (was optional) |
POST /cra/check_report/verification/get | response 200 nullable changed | Breaking | Response 200 field "report.voa.items[].accounts[].transactions_insights.all_transactions[].credit_category.primary": false → true |
POST /cra/check_report/verification/get | response 200 nullable changed | Breaking | Response 200 field "report.voa.items[].accounts[].transactions_insights.all_transactions[].credit_category.detailed": false → true |
POST /cra/report/get | response 200 nullable changed | Breaking | Response 200 field "report.products[].oneOf[6].items[].accounts[].transactions[].credit_category.primary": false → true |
POST /cra/report/get | response 200 nullable changed | Breaking | Response 200 field "report.products[].oneOf[6].items[].accounts[].transactions[].credit_category.detailed": false → true |
POST /cashflow_report/get | response 200 nullable changed | Breaking | Response 200 field "transactions[].credit_category.primary": false → true |
POST /cashflow_report/get | response 200 nullable changed | Breaking | Response 200 field "transactions[].credit_category.detailed": false → true |
POST /cashflow_report/transactions/get | response 200 nullable changed | Breaking | Response 200 field "transactions[].credit_category.primary": false → true |
POST /cashflow_report/transactions/get | response 200 nullable changed | Breaking | Response 200 field "transactions[].credit_category.detailed": false → true |
POST /institutions/get | response 200 required added | OK | Response 200 field "institutions[].status": Became required: item_logins |
POST /institutions/get | response 200 nullable changed | Breaking | Response 200 field "institutions[].status.health_incidents[].incident_updates": false → true |
POST /institutions/search | response 200 required added | OK | Response 200 field "institutions[].status": Became required: item_logins |
POST /institutions/search | response 200 nullable changed | Breaking | Response 200 field "institutions[].status.health_incidents[].incident_updates": false → true |
POST /institutions/get_by_id | response 200 required added | OK | Response 200 field "institution.status": Became required: item_logins |
POST /institutions/get_by_id | response 200 nullable changed | Breaking | Response 200 field "institution.status.health_incidents[].incident_updates": false → true |
POST /business_verification/get | response 200 new required property | OK | Response 200 field "(root)": New required property: business_verification |
POST /business_verification/get | response 200 required removed | Potential | Response 200 field "(root)": No longer required: kyb_check |
POST /business_verification/get | response 200 new required property | OK | Response 200 field "search_terms": New required property: tin, officers |
POST /business_verification/get | response 200 property added | OK | Response 200 field "search_terms.tin": Added (required) |
POST /business_verification/get | response 200 property added | OK | Response 200 field "search_terms.officers": Added (required) |
POST /business_verification/get | response 200 property removed | Breaking | Response 200 field "kyb_check": Removed (was required) |
POST /business_verification/get | response 200 nullable changed | Breaking | Response 200 field "digital_presence_check.website_analysis.website_build_status": false → true |
POST /business_verification/get | response 200 enum values added | Potential | Response 200 field "digital_presence_check.website_analysis.website_build_status": Added: null |
POST /business_verification/get | response 200 property added | OK | Response 200 field "business_verification": Added (required) |
POST /business_verification/create | request body required added | Breaking | Became required: business |
POST /business_verification/create | request body nullable changed | Breaking | true → false |
POST /business_verification/create | request body required added | Breaking | Became required: name, address |
POST /business_verification/create | request body property added | OK | Added (optional) |
POST /business_verification/create | request body property added | OK | Added (optional) |
POST /business_verification/create | response 200 new required property | OK | Response 200 field "(root)": New required property: business_verification |
POST /business_verification/create | response 200 required removed | Potential | Response 200 field "(root)": No longer required: kyb_check |
POST /business_verification/create | response 200 new required property | OK | Response 200 field "search_terms": New required property: tin, officers |
POST /business_verification/create | response 200 property added | OK | Response 200 field "search_terms.tin": Added (required) |
POST /business_verification/create | response 200 property added | OK | Response 200 field "search_terms.officers": Added (required) |
POST /business_verification/create | response 200 property removed | Breaking | Response 200 field "kyb_check": Removed (was required) |
POST /business_verification/create | response 200 nullable changed | Breaking | Response 200 field "digital_presence_check.website_analysis.website_build_status": false → true |
POST /business_verification/create | response 200 enum values added | Potential | Response 200 field "digital_presence_check.website_analysis.website_build_status": Added: null |
POST /business_verification/create | response 200 property added | OK | Response 200 field "business_verification": Added (required) |
POST /processor/bank_transfer/create | response 200 nullable changed | Breaking | Response 200 field "bank_transfer.failure_reason.description": false → true |
POST /processor/bank_transfer/create | response 200 nullable changed | Breaking | Response 200 field "bank_transfer.origination_account_id": false → true |
POST /user/transfer/limits/get | description updated | OK | Summary or description text changed. No contract impact. |
POST /link/token/get | response 200 type changed | Breaking | Response 200 field "metadata.institution_data": object → (none) |
POST /link/token/get | response 200 nullable changed | Breaking | Response 200 field "metadata.institution_data": false → true |
POST /link/token/get | response 200 property removed | Potential | Response 200 field "metadata.institution_data.routing_number": Removed (was optional) |
POST /link/token/get | response 200 property removed | Potential | Response 200 field "metadata.institution_data.institution_id": Removed (was optional) |
POST /link/token/get | response 200 allOf added | OK | Response 200 field "metadata.institution_data": allOf added with 1 schema(s) |
POST /link/token/get | response 200 type changed | Breaking | Response 200 field "metadata.account_filters": object → (none) |
POST /link/token/get | response 200 nullable changed | Breaking | Response 200 field "metadata.account_filters": false → true |
POST /link/token/get | response 200 property removed | Potential | Response 200 field "metadata.account_filters.depository": Removed (was optional) |
POST /link/token/get | response 200 property removed | Potential | Response 200 field "metadata.account_filters.credit": Removed (was optional) |
POST /link/token/get | response 200 property removed | Potential | Response 200 field "metadata.account_filters.loan": Removed (was optional) |
POST /link/token/get | response 200 property removed | Potential | Response 200 field "metadata.account_filters.investment": Removed (was optional) |
POST /link/token/get | response 200 allOf added | OK | Response 200 field "metadata.account_filters": allOf added with 1 schema(s) |
POST /bank_transfer/get | response 200 nullable changed | Breaking | Response 200 field "bank_transfer.failure_reason.description": false → true |
POST /bank_transfer/get | response 200 nullable changed | Breaking | Response 200 field "bank_transfer.origination_account_id": false → true |
POST /bank_transfer/create | response 200 nullable changed | Breaking | Response 200 field "bank_transfer.failure_reason.description": false → true |
POST /bank_transfer/create | response 200 nullable changed | Breaking | Response 200 field "bank_transfer.origination_account_id": false → true |
POST /bank_transfer/list | response 200 nullable changed | Breaking | Response 200 field "bank_transfers[].failure_reason.description": false → true |
POST /bank_transfer/list | response 200 nullable changed | Breaking | Response 200 field "bank_transfers[].origination_account_id": false → true |
POST /bank_transfer/event/list | response 200 nullable changed | Breaking | Response 200 field "bank_transfer_events[].failure_reason.description": false → true |
POST /bank_transfer/event/sync | response 200 nullable changed | Breaking | Response 200 field "bank_transfer_events[].failure_reason.description": false → true |
POST /sandbox/bank_transfer/simulate | request body nullable changed | OK | false → true |
POST /credit/relay/get | response 200 nullable changed | Breaking | Response 200 field "report.items[].accounts[].transactions[].credit_category.primary": false → true |
POST /credit/relay/get | response 200 nullable changed | Breaking | Response 200 field "report.items[].accounts[].transactions[].credit_category.detailed": false → true |
components/schemas/CashflowReportGetResponse.transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/CashflowReportGetResponse.transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/CashflowReportTransactionsGetResponse.transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/CashflowReportTransactionsGetResponse.transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/InstitutionsGetResponse.institutions[].status | required added | Breaking | New required: item_logins |
components/schemas/InstitutionsGetResponse.institutions[].status.health_incidents[].incident_updates | nullable changed | Potential | false → true |
components/schemas/InstitutionsSearchResponse.institutions[].status | required added | Breaking | New required: item_logins |
components/schemas/InstitutionsSearchResponse.institutions[].status.health_incidents[].incident_updates | nullable changed | Potential | false → true |
components/schemas/InstitutionsGetByIdResponse.institution.status | required added | Breaking | New required: item_logins |
components/schemas/InstitutionsGetByIdResponse.institution.status.health_incidents[].incident_updates | nullable changed | Potential | false → true |
components/schemas/ProcessorBankTransferCreateResponse.bank_transfer.failure_reason.description | nullable changed | Potential | false → true |
components/schemas/ProcessorBankTransferCreateResponse.bank_transfer.origination_account_id | nullable changed | Potential | false → true |
components/schemas/LinkTokenGetResponse.metadata.institution_data | type changed | Breaking | object → (none) |
components/schemas/LinkTokenGetResponse.metadata.institution_data | nullable changed | Potential | false → true |
components/schemas/LinkTokenGetResponse.metadata.institution_data.routing_number | property removed | Breaking | Removed |
components/schemas/LinkTokenGetResponse.metadata.institution_data.institution_id | property removed | Breaking | Removed |
components/schemas/LinkTokenGetResponse.metadata.institution_data | allOf added | OK | allOf added with 1 schema(s) |
components/schemas/LinkTokenGetResponse.metadata.account_filters | type changed | Breaking | object → (none) |
components/schemas/LinkTokenGetResponse.metadata.account_filters | nullable changed | Potential | false → true |
components/schemas/LinkTokenGetResponse.metadata.account_filters.depository | property removed | Breaking | Removed |
components/schemas/LinkTokenGetResponse.metadata.account_filters.credit | property removed | Breaking | Removed |
components/schemas/LinkTokenGetResponse.metadata.account_filters.loan | property removed | Breaking | Removed |
components/schemas/LinkTokenGetResponse.metadata.account_filters.investment | property removed | Breaking | Removed |
components/schemas/LinkTokenGetResponse.metadata.account_filters | allOf added | OK | allOf added with 1 schema(s) |
components/schemas/LinkTokenGetMetadataResponse.institution_data | type changed | Breaking | object → (none) |
components/schemas/LinkTokenGetMetadataResponse.institution_data | nullable changed | Potential | false → true |
components/schemas/LinkTokenGetMetadataResponse.institution_data.routing_number | property removed | Breaking | Removed |
components/schemas/LinkTokenGetMetadataResponse.institution_data.institution_id | property removed | Breaking | Removed |
components/schemas/LinkTokenGetMetadataResponse.institution_data | allOf added | OK | allOf added with 1 schema(s) |
components/schemas/LinkTokenGetMetadataResponse.account_filters | type changed | Breaking | object → (none) |
components/schemas/LinkTokenGetMetadataResponse.account_filters | nullable changed | Potential | false → true |
components/schemas/LinkTokenGetMetadataResponse.account_filters.depository | property removed | Breaking | Removed |
components/schemas/LinkTokenGetMetadataResponse.account_filters.credit | property removed | Breaking | Removed |
components/schemas/LinkTokenGetMetadataResponse.account_filters.loan | property removed | Breaking | Removed |
components/schemas/LinkTokenGetMetadataResponse.account_filters.investment | property removed | Breaking | Removed |
components/schemas/LinkTokenGetMetadataResponse.account_filters | allOf added | OK | allOf added with 1 schema(s) |
components/schemas/CashflowReportTransaction.credit_category.primary | nullable changed | Potential | false → true |
components/schemas/CashflowReportTransaction.credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/Institution.status | required added | Breaking | New required: item_logins |
components/schemas/Institution.status.health_incidents[].incident_updates | nullable changed | Potential | false → true |
components/schemas/InstitutionStatus | required added | Breaking | New required: item_logins |
components/schemas/InstitutionStatus.health_incidents[].incident_updates | nullable changed | Potential | false → true |
components/schemas/UserCustomPassword.has_perpetual_otp | property added | OK | Added |
components/schemas/BankTransferGetResponse.bank_transfer.failure_reason.description | nullable changed | Potential | false → true |
components/schemas/BankTransferGetResponse.bank_transfer.origination_account_id | nullable changed | Potential | false → true |
components/schemas/BankTransfer.failure_reason.description | nullable changed | Potential | false → true |
components/schemas/BankTransfer.origination_account_id | nullable changed | Potential | false → true |
components/schemas/BankTransferFailure.description | nullable changed | Potential | false → true |
components/schemas/BankTransferCreateResponse.bank_transfer.failure_reason.description | nullable changed | Potential | false → true |
components/schemas/BankTransferCreateResponse.bank_transfer.origination_account_id | nullable changed | Potential | false → true |
components/schemas/BankTransferListResponse.bank_transfers[].failure_reason.description | nullable changed | Potential | false → true |
components/schemas/BankTransferListResponse.bank_transfers[].origination_account_id | nullable changed | Potential | false → true |
components/schemas/BankTransferEvent.failure_reason.description | nullable changed | Potential | false → true |
components/schemas/BankTransferEventListResponse.bank_transfer_events[].failure_reason.description | nullable changed | Potential | false → true |
components/schemas/BankTransferEventSyncResponse.bank_transfer_events[].failure_reason.description | nullable changed | Potential | false → true |
components/schemas/SandboxBankTransferSimulateRequest.failure_reason.description | nullable changed | Potential | false → true |
components/schemas/AccountFiltersResponse.depository | type changed | Breaking | object → (none) |
components/schemas/AccountFiltersResponse.depository | nullable changed | Potential | false → true |
components/schemas/AccountFiltersResponse.depository | required removed | Potential | No longer required: account_subtypes |
components/schemas/AccountFiltersResponse.depository.account_subtypes | property removed | Breaking | Removed |
components/schemas/AccountFiltersResponse.depository.limited_purpose_types | property removed | Breaking | Removed |
components/schemas/AccountFiltersResponse.depository | allOf added | OK | allOf added with 1 schema(s) |
components/schemas/AccountFiltersResponse.credit | type changed | Breaking | object → (none) |
components/schemas/AccountFiltersResponse.credit | nullable changed | Potential | false → true |
components/schemas/AccountFiltersResponse.credit | required removed | Potential | No longer required: account_subtypes |
components/schemas/AccountFiltersResponse.credit.account_subtypes | property removed | Breaking | Removed |
components/schemas/AccountFiltersResponse.credit | allOf added | OK | allOf added with 1 schema(s) |
components/schemas/AccountFiltersResponse.loan | type changed | Breaking | object → (none) |
components/schemas/AccountFiltersResponse.loan | nullable changed | Potential | false → true |
components/schemas/AccountFiltersResponse.loan | required removed | Potential | No longer required: account_subtypes |
components/schemas/AccountFiltersResponse.loan.account_subtypes | property removed | Breaking | Removed |
components/schemas/AccountFiltersResponse.loan | allOf added | OK | allOf added with 1 schema(s) |
components/schemas/AccountFiltersResponse.investment | type changed | Breaking | object → (none) |
components/schemas/AccountFiltersResponse.investment | nullable changed | Potential | false → true |
components/schemas/AccountFiltersResponse.investment | required removed | Potential | No longer required: account_subtypes |
components/schemas/AccountFiltersResponse.investment.account_subtypes | property removed | Breaking | Removed |
components/schemas/AccountFiltersResponse.investment | allOf added | OK | allOf added with 1 schema(s) |
components/schemas/HealthIncident.incident_updates | nullable changed | Potential | false → true |
components/schemas/CreditCategory.primary | nullable changed | Potential | false → true |
components/schemas/CreditCategory.detailed | nullable changed | Potential | false → true |
components/schemas/AssetReportGetResponse.report.items[].accounts[].transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/AssetReportGetResponse.report.items[].accounts[].transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/CraMonitoringInsightsGetResponse.items[].accounts[].transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/CraMonitoringInsightsGetResponse.items[].accounts[].transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/CraMonitoringInsightsGetResponse.items[].accounts[].investments | property removed | Breaking | Removed |
components/schemas/CraMonitoringInsightsItem.accounts[].transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/CraMonitoringInsightsItem.accounts[].transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/CraMonitoringInsightsItem.accounts[].investments | property removed | Breaking | Removed |
components/schemas/CraCheckReportBaseReportGetResponse.report.items[].accounts[].transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/CraCheckReportBaseReportGetResponse.report.items[].accounts[].transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/CraCheckReportBaseReportGetResponse.report.items[].accounts[].investments | property removed | Breaking | Removed |
components/schemas/AssetReport.items[].accounts[].transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/AssetReport.items[].accounts[].transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/AssetReportItem.accounts[].transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/AssetReportItem.accounts[].transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/AccountAssets.transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/AccountAssets.transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/AssetReportTransaction.credit_category.primary | nullable changed | Potential | false → true |
components/schemas/AssetReportTransaction.credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/BaseReport.items[].accounts[].transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/BaseReport.items[].accounts[].transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/BaseReport.items[].accounts[].investments | property removed | Breaking | Removed |
components/schemas/BaseReportItem.accounts[].transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/BaseReportItem.accounts[].transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/BaseReportItem.accounts[].investments | property removed | Breaking | Removed |
components/schemas/BaseReportAccount.transactions[].credit_category.primary | nullable changed | Potential | false → true |
components/schemas/BaseReportAccount.transactions[].credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/BaseReportAccount.investments | property removed | Breaking | Removed |
components/schemas/BaseReportTransaction.credit_category.primary | nullable changed | Potential | false → true |
components/schemas/BaseReportTransaction.credit_category.detailed | nullable changed | Potential | false → true |
components/schemas/BusinessKYBCheck | schema removed | Breaking | Shared schema "BusinessKYBCheck" was removed. Endpoints referencing it changed shape. |
components/schemas/BusinessSearchTerms.tin | property added | Breaking | Added (required) |
components/schemas/BusinessSearchTerms.officers | property added | Breaking | Added (required) |
components/schemas/BusinessVerificationCreateRequest | required added | Breaking | New required: business |
components/schemas/BusinessVerificationCreateRequest.business | nullable changed | Potential | true → false |
components/schemas/BusinessVerificationCreateRequest.business | required added | Breaking | New required: name, address |
components/schemas/BusinessVerificationCreateRequest.business.tin | property added | OK | Added |
components/schemas/BusinessVerificationCreateRequest.business.officers | property added | OK | Added |
components/schemas/BusinessVerificationCreateRequestBusiness | nullable changed | Potential | true → false |
components/schemas/BusinessVerificationCreateRequestBusiness | required added | Breaking | New required: name, address |
components/schemas/BusinessVerificationCreateRequestBusiness.tin | property added | OK | Added |
components/schemas/BusinessVerificationCreateRequestBusiness.officers | property added | OK | Added |
components/schemas/BusinessVerificationCreateResponse | required removed | Potential | No longer required: kyb_check |
components/schemas/BusinessVerificationCreateResponse.search_terms.tin | property added | Breaking | Added (required) |
components/schemas/BusinessVerificationCreateResponse.search_terms.officers | property added | Breaking | Added (required) |
components/schemas/BusinessVerificationCreateResponse.kyb_check | property removed | Breaking | Removed |
components/schemas/BusinessVerificationCreateResponse.digital_presence_check.website_analysis.website_build_status | nullable changed | Potential | false → true |
Showing the first 200 changes of this update.
Point us at your own OpenAPI spec and get the same automatic changelog, plus email alerts and breaking-change classification on every release.