Skip to content

Introduction

The BANKSapi AI platform provides classification and analysis of financial data.

Endpoint Types

There are two complementary endpoint types.

Transaction-Level Endpoints classify individual transactions within bank products by spending categories, business partners, insurance types, and more.

User-Level Endpoints aggregate all bank products and their transactions to deliver comprehensive insights like contract detection, life stage analysis, credit risk assessment, and financial behavior patterns.

Building Blocks

Endpoints build upon each other, transaction classifications form the foundation for contract detection, which enables life stage analysis, which powers credit risk assessment.
This layered approach ensures consistency while maximizing the value extracted from financial data.

Standardized Classification

All endpoints use a standardized tagging architecture with Tag Instances linking entities to Tag Tree Items from hierarchical Tag Trees.
For example, in Categories, a grocery store transaction gets a Tag Instance linking to the Tag Tree Item LIVING_GROCERIES from the Tag Tree CATEGORIES.
This ensures consistent classification vocabularies across the platform.
Explore the Tags endpoints to understand available taxonomies and classes before diving into specific classifications.

Getting Started

Ready to start? Try Categories to classify each transaction of a bank product or Contracts to detect the contracts of a user across all his bank products.

Contact

Servers

https://banksapi.ioProduction server

Affinities

Identifies user interests and lifestyle patterns by analyzing spending behavior, contract relationships, and life stages to determine specific affinities for targeted product recommendations and personalized services.

Multi-Dimensional Detection System

The affinity detection engine operates across three complementary data sources:

  • Contract Analysis - Analyzes existing contracts and insurance types to infer interests (e.g., gym membership suggests fitness affinity)
  • Transaction Patterns - Examines spending frequency and amounts in specific categories over time
  • Life Stage Integration - Correlates current life stages with typical associated interests and needs

Transaction-Based Detection

The system monitors spending patterns over a 6-month analysis window using sophisticated threshold-based detection:

  • Frequency Thresholds - Detects consistent spending in specific categories (e.g., monthly gym memberships for fitness affinity)
  • Transaction Count Analysis - Requires minimum number of transactions per month to establish genuine interest patterns
  • Parent Category Matching - Can detect affinities at both granular level (specific merchants) and broader category level
  • Statistical Validation - Uses percentage of months meeting criteria to ensure sustained interest rather than isolated events

Practical Applications

  • Targeted Marketing - Deliver personalized product recommendations based on detected lifestyle interests
  • Customer Segmentation - Group users by similar interests for focused campaign strategies
  • Product Development - Understand customer preferences to design relevant financial products
  • Cross-selling Opportunities - Identify users likely to be interested in specific services or partnerships

Example Affinities Detected

The system can identify various lifestyle and interest-based affinities, including:

  • Sportive - Detects fitness enthusiasts through gym memberships and sports-related spending
  • Pet owner - Identifies pet owners via pet-related expenses and animal insurance contracts
  • Traveler - Recognizes frequent travelers through travel-related transaction patterns
  • Foodie - Spots food enthusiasts based on dining out and culinary spending habits
  • Fashion Enthusiast - Identifies fashion-conscious users through clothing and accessories purchases
  • Parent - Detected through life stage analysis rather than transaction patterns
  • Car Owners - Car owners identified through fuel purchases and vehicle-related expenses like taxes and insurance
  • Technophiles - Technology enthusiasts detected via electronics purchases
  • Avid Investors - Identifies investment-minded users through banking and investment transactions
  • Home & Garden - Home improvement enthusiasts via furnishing and garden expenses

Extensibility and Customization

The affinity detection system is designed with extensibility in mind, allowing for future enhancements and customization:

  • Extendable Category Mappings - The system can be extended to define which spending categories trigger specific affinities.
  • Adjustable Threshold Values - Thresholds for spending frequencies and amounts can be adjusted to fine-tune detection.
  • Configurable Time Windows - The analysis periods for different types of interests can be modified.
  • Adaptable Detection Rules - New affinities can be added and existing detection logic can be adapted based on business needs.

This adaptability allows the system to be tailored to different market segments and evolving customer behavior patterns.


Get affinities tags

GET
/customer/v2/ai/affinities/

Returns detected affinities for a provided user.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Responses

Success, tags newly created or read from database

application/json
JSON
[
{
"entity": {
"displayName": "BENUTZER",
"entityClass": "USER",
"id": "d93043ad-e427-4ccc-95ed-09526ff2dc8a",
"userId": "d93043ad-e427-4ccc-95ed-09526ff2dc8a"
},
"id": "0e992f42-eb5f-4de4-a2c1-8daa53d8c395",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/14/",
"rel": "tag_tree"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/14/tag-tree-items/",
"rel": "tag_tree_items"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/14/tag-tree-items/1/",
"rel": "tag_tree_item"
}
],
"tagTreeItem": {
"description": "Sportive",
"displayName": "Sportenthusiast*in",
"systemId": 1,
"systemName": "SPORTIVE",
"tagTree": {
"description": "Affinity detection tag tree.",
"displayName": "Affinitäten",
"isTenantGenerated": false,
"systemId": 14,
"systemName": "AFFINITIES",
"version": 0.1
}
}
}
]

Playground

Headers

Samples


Affordability

Provides comprehensive affordability analysis by evaluating income, expenses, and financial behavior patterns to assess a user's creditworthiness and financial stability.

Practical Applications

  • Credit Risk Assessment - Evaluate loan applications by analyzing expense-to-income ratios and payment behavior
  • Financial Product Recommendations - Match users with suitable financial products based on spending patterns
  • Investment Advisory - Determine safe investment thresholds based on discretionary income analysis
  • Budget Planning - Help users understand their financial capacity for major purchases or commitments

Key Financial Metrics

The analysis generates comprehensive metrics across multiple dimensions:

  • Income Analysis - Separates regular (contract-based) from irregular income streams
  • Expense Categorization - Breaks down expenses into necessities and luxuries with detailed subcategory analysis
  • Financial Ratios - Calculates critical ratios like expenses-to-income, luxuries-to-income, and necessities-to-income
  • Discretionary Income - Computes available money after necessities for financial decision-making
  • Savings Capacity - Determines monthly surplus or deficit based on income minus total expenses

Advanced Risk Indicators

The system monitors various financial health indicators:

  • Credit Behavior - Detects existing loans, mortgage payments, and credit card usage patterns
  • Payment Issues - Identifies return debits, reminder charges, debt collection, and seizure payments
  • Gambling Activity - Tracks recreational gambling expenses as a risk factor
  • Financial Literacy Score - Evaluates financial management competency based on account balances and transaction history

Data Processing Window

Analysis typically covers a 6-month historical window to ensure statistical relevance while capturing recent financial patterns.
The system intelligently adjusts the analysis period based on available transaction history and ensures sufficient data completeness for accurate predictions.

Necessity vs. Luxury Classification

Expenses are automatically classified using the categories tag tree system:

  • Necessities - Essential expenses like rent, utilities, groceries, fuel, and basic insurance
  • Luxuries - Discretionary spending including entertainment, dining out, non-essential shopping, and premium services

This classification enables precise calculation of discretionary income and spending flexibility for financial planning purposes.

Related Endpoints

  • credit-attributes - Provides complementary credit risk assessment with focus on creditworthiness indicators, life stage analysis, and detailed credit contract evaluation for comprehensive lending decisions

Get affordability tags

GET
/customer/v2/ai/affordability/

Returns comprehensive affordability analysis for a provided user.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Responses

Success, tags newly created or read from database

application/json
JSON
{
"details": {
"creditCards": 0,
"debtCollectionPayments": false,
"discretionary": 3788.69,
"discretionaryForIrregularLuxuries": 3609.48,
"existingLoans": false,
"expenses": {
"amount": -1722.88,
"luxuries": {
"amount": -435.9,
"irregular": {
"amount": -216.57,
"amountsPerTagTreeItem": [
{
"amount": -191.67,
"tagTreeItem": {
"description": "Transactions involving cash withdrawals at an ATM or a bank facility",
"displayName": "Barauszahlung",
"systemId": 2,
"systemName": "BANKFINANCE_CASHWITHDRAWAL",
"systemNameParent": "BANKFINANCE",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -12.22,
"tagTreeItem": {
"description": "Payments from eating out (e.g. restaurants, bars)",
"displayName": "Ausgehen und Essen",
"systemId": 83,
"systemName": "RECREATION_FOODANDDRINKS",
"systemNameParent": "RECREATION",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -2.99,
"tagTreeItem": {
"description": "Expenses for clothing and accessories",
"displayName": "Kleidung und Accessoires",
"systemId": 101,
"systemName": "SHOPPING_CLOTHINGACCESSORIES",
"systemNameParent": "SHOPPING",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -6,
"tagTreeItem": {
"description": "Donations to charities",
"displayName": "Spenden & Wohltätigkeit",
"systemId": 65,
"systemName": "LIVING_CHARITY",
"systemNameParent": "LIVING",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -1.58,
"tagTreeItem": {
"description": "Expenses related to child toys (e.g. buying toys at toysrus)",
"displayName": "Spielwaren",
"systemId": 25,
"systemName": "FAMILY_TOYS",
"systemNameParent": "FAMILY",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -1.82,
"tagTreeItem": {
"description": "Other transactions related to the subject of housing",
"displayName": "Wohnen - Sonstiges",
"systemId": 35,
"systemName": "HOUSING_OTHER",
"systemNameParent": "HOUSING",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -0.29,
"tagTreeItem": {
"description": "Other transactions including living expenses",
"displayName": "Lebenshaltung - Sonstiges",
"systemId": 68,
"systemName": "LIVING_OTHER",
"systemNameParent": "LIVING",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
}
]
},
"regular": {
"amount": -179.21,
"amountsPerTagTreeItem": [
{
"amount": -21.98,
"tagTreeItem": {
"description": "Expenses for music and video streaming as well as pay TV",
"displayName": "Streaming und Pay-TV",
"systemId": 115,
"systemName": "RECREATION_STREAMING",
"systemNameParent": "RECREATION",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -20,
"tagTreeItem": {
"description": "Transactions related to personal fitness and sports (e.g. monthly gym membership payments)",
"displayName": "Sport und Fitness",
"systemId": 89,
"systemName": "RECREATION_SPORTS",
"systemNameParent": "RECREATION",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -24.1,
"tagTreeItem": {
"description": "Payments related to a car insurance",
"displayName": "KFZ-Versicherung",
"systemId": 63,
"systemName": "INSURANCE_VEHICLE",
"systemNameParent": "INSURANCE",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -4.77,
"tagTreeItem": {
"description": "Payments related to a liability insurance contract",
"displayName": "Haftpflichtversicherung",
"systemId": 57,
"systemName": "INSURANCE_LIABILITY",
"systemNameParent": "INSURANCE",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -79.01,
"tagTreeItem": {
"description": "Payments related to a life insurance contract",
"displayName": "Lebensversicherung",
"systemId": 58,
"systemName": "INSURANCE_LIFE",
"systemNameParent": "INSURANCE",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -10.31,
"tagTreeItem": {
"description": "Payments from eating out (e.g. restaurants, bars)",
"displayName": "Ausgehen und Essen",
"systemId": 83,
"systemName": "RECREATION_FOODANDDRINKS",
"systemNameParent": "RECREATION",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -19.04,
"tagTreeItem": {
"description": "Payments related to an insurance contract covering legal expenses",
"displayName": "Rechtsschutzversicherung",
"systemId": 56,
"systemName": "INSURANCE_LEGAL",
"systemNameParent": "INSURANCE",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
}
]
}
},
"necessities": {
"amount": -1272.15,
"irregular": {
"amount": -94.02,
"amountsPerTagTreeItem": [
{
"amount": -48.94,
"tagTreeItem": {
"description": "Payments from grocery shopping",
"displayName": "Lebensmittel",
"systemId": 67,
"systemName": "LIVING_GROCERIES",
"systemNameParent": "LIVING",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -21.62,
"tagTreeItem": {
"description": "Payments from refueling at a gas station",
"displayName": "Kraftstoffe und Schmiermittel",
"systemId": 72,
"systemName": "MOBILITY_FUEL",
"systemNameParent": "MOBILITY",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -6.28,
"tagTreeItem": {
"description": "Payments for drugstore items (e.g. buying bath products)",
"displayName": "Drogerie",
"systemId": 66,
"systemName": "LIVING_DRUGSTORE",
"systemNameParent": "LIVING",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -4.19,
"tagTreeItem": {
"description": "Business related interest or principal payments",
"displayName": "Kredittilgung (geschäftlich)",
"systemId": 144,
"systemName": "BUSINESS_CREDITPAYMENT",
"systemNameParent": "BUSINESS",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -7.38,
"tagTreeItem": {
"description": "Transactions involving payments for public radio and television",
"displayName": "Öffentlich-rechtlicher Rundfunk",
"systemId": 11,
"systemName": "BILLS_PUBLICRADIO",
"systemNameParent": "BILLS",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -5.61,
"tagTreeItem": {
"description": "Other transactions related to education",
"displayName": "Bildungswesen - Sonstiges",
"systemId": 16,
"systemName": "EDUCATION_OTHER",
"systemNameParent": "EDUCATION",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
}
]
},
"regular": {
"amount": -1135.31,
"amountsPerTagTreeItem": [
{
"amount": -17.5,
"tagTreeItem": {
"description": "Transactions involving payments for public radio and television",
"displayName": "Öffentlich-rechtlicher Rundfunk",
"systemId": 11,
"systemName": "BILLS_PUBLICRADIO",
"systemNameParent": "BILLS",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -2.53,
"tagTreeItem": {
"description": "Payments from refueling at a gas station",
"displayName": "Kraftstoffe und Schmiermittel",
"systemId": 72,
"systemName": "MOBILITY_FUEL",
"systemNameParent": "MOBILITY",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -0.9,
"tagTreeItem": {
"description": "Payments for drugstore items (e.g. buying bath products)",
"displayName": "Drogerie",
"systemId": 66,
"systemName": "LIVING_DRUGSTORE",
"systemNameParent": "LIVING",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -56.82,
"tagTreeItem": {
"description": "Transactions involving payments for electricity and heating (e.g. to a municipal utility)",
"displayName": "Energiekosten",
"systemId": 9,
"systemName": "BILLS_ENERGY",
"systemNameParent": "BILLS",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -46.17,
"tagTreeItem": {
"description": "Payments to telecommunication providers for a mobile or fixed-line network connection",
"displayName": "Internet und Telekommunikation",
"systemId": 12,
"systemName": "BILLS_TELECOMMUNICATIONS",
"systemNameParent": "BILLS",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -66.6,
"tagTreeItem": {
"description": "Payments from using public transports",
"displayName": "ÖPNV",
"systemId": 75,
"systemName": "MOBILITY_PUBLICTRANSPORT",
"systemNameParent": "MOBILITY",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": -944.79,
"tagTreeItem": {
"description": "Transactions involving payments to a tenant",
"displayName": "Miete/Wohngeld",
"systemId": 37,
"systemName": "HOUSING_RENT",
"systemNameParent": "HOUSING",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
}
]
}
}
},
"financialLiteracy": false,
"gambling": 0,
"income": {
"amount": 5060.84,
"irregular": {
"amount": 0,
"amountsPerTagTreeItem": [
]
},
"regular": {
"amount": 5060.84,
"amountsPerTagTreeItem": [
{
"amount": 4856.84,
"tagTreeItem": {
"description": "Income from salary payments",
"displayName": "Gehalt",
"systemId": 49,
"systemName": "INCOME_SALARY",
"systemNameParent": "INCOME",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
{
"amount": 204,
"tagTreeItem": {
"description": "Income from gov. child benefits",
"displayName": "Staatliche Förderung für Familie und Kinder",
"systemId": 52,
"systemName": "INCOME_STATEFAMILY",
"systemNameParent": "INCOME",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
}
]
}
},
"mortgagePayments": false,
"mostRecentRentalPayment": "2023-06-15",
"ratioExpensesToIncome": 0.34,
"ratioLuxuriesToExpenses": 0.25,
"ratioLuxuriesToIncome": 0.09,
"ratioNecessitiesToExpenses": 0.74,
"ratioNecessitiesToIncome": 0.25,
"reminderCharges": false,
"rentalPayments": true,
"returnDebits": false,
"savings": 3337.96,
"seizurePayments": false
},
"entity": {
"displayName": "BENUTZER",
"entityClass": "USER",
"id": "288ba056-12e0-4ba4-ae89-037153e58f27",
"userId": "288ba056-12e0-4ba4-ae89-037153e58f27"
},
"id": "69ffdb15-4c4b-4818-8a93-e9479e0bd845",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/17/",
"rel": "tag_tree"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/17/tag-tree-items/",
"rel": "tag_tree_items"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/17/tag-tree-items/2/",
"rel": "tag_tree_item"
}
],
"tagTreeItem": {
"description": "Information about the affordability",
"displayName": "Informationen über die Bezahlbarkeit",
"systemId": 2,
"systemName": "AFFORDABILITY_CHECK",
"systemNameParent": "AFFORDABILITY",
"tagTree": {
"description": "Affordability tag tree with single parent and child tag.",
"displayName": "Bezahlbarkeit",
"isTenantGenerated": false,
"systemId": 17,
"systemName": "AFFORDABILITY",
"version": 0.1
}
}
}

Playground

Headers

Samples


Cashflow

Provides cashflow statistics and predictions based on a user's full transaction history.

This endpoint analyzes a user's transaction history to generate comprehensive cashflow insights, including income and expense patterns, spending trends, and financial predictions.
The analysis categorizes transactions and provides statistical summaries to help understand financial behavior.

Key Features

  • Dual-Axis Analysis
    Provides cashflow data organized by both categorization and time components.
    You can switch the focus between the two dimensions, either sorted by categories on the outer level with time on the inner level, or vice versa.

  • Multiple Time Aggregations
    Time components include weekly, monthly, quarterly, annual, and total aggregations, allowing tailored analysis.

  • Flexible Categorization
    Uses either categories or business-partners as the categorization basis for organizing cashflow data.

  • Predictive Analytics
    Generates predictions based on historical data from the previous 12 cycles (e.g., 12 months), incorporating recurring transaction patterns from the contracts endpoint for enhanced accuracy.
    For instance, if the user's salary is pending for the current month, the prediction will account for this expected income.
    Predictions are calculated for the current and the next cycle.
    Therefore, the current cycle has both statistical and predictive data, while all other cycle only contain either statistics (past cycles) or predictions (next cycle).
    Note: Currently, predictions are available when the focus of the analysis is on categorization according to categories.

  • Savings Filtering
    Optional exclusion of savings transactions to prevent distortion of expense statistics when savings shouldn't be considered as regular expenses for specific use cases.

  • Category Level Control
    When using categories for categorization, it's possible to limit to main categories only for higher-level analysis.

  • Aggregated Totals
    When the analysis focuses on time periods and uses categories as the categorization basis, special aggregated tag tree items are included:

    • NET (overall cashflow)
    • INCOME (all income transactions)
    • EXPENSES (all expense transactions)

    These totals exclude transfer transactions to provide accurate cashflow summaries for each time period.
    Note: These totals are not included when using business-partners categorization or when the focus is on individual categories.


Get cashflow tags

GET
/customer/v2/ai/cashflow/

Returns cashflow analysis with statistics and predictions for a provided user.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Query Parameters

focus

Cashflow is generated with the focus on either time or tag (CATEGORIES or BUSINESS_PARTNER)

Examples
"time""tag"
Default
"time"
tag

Tag to use when summarizing the cashflow

Examples
"CATEGORIES""BUSINESS_PARTNERS"
Default
"CATEGORIES"
catLevel

Use the usual tags ("sub") or their parents ("main"). Only relevant if tag=CATEGORIES

Examples
"sub""main"
Default
"sub"
excludeSavings

Exclude savings and investments related transactions

Type
boolean
Examples
falsetrue

Responses

Success, tags newly created or read from database

application/json
JSON
[
{
"details": {
"predictions": [
],
"statistics": [
{
"cashflow": -1879.46,
"tagTreeItem": {
"displayName": "Gesamt",
"systemId": 906,
"systemName": "TOTAL_TOTAL",
"systemNameParent": "TOTAL",
"tagTree": {
"description": "Two level tree with years as parents and its periods as children.",
"displayName": "Cashflow",
"isClientGenerated": false,
"systemId": 6,
"systemName": "CASHFLOW",
"version": 1
}
}
},
{
"cashflow": -342.91,
"tagTreeItem": {
"displayName": "Jahr 2020",
"systemId": 692,
"systemName": "2020_Y",
"systemNameParent": "2020",
"tagTree": {
"description": "Two level tree with years as parents and its periods as children.",
"displayName": "Cashflow",
"isClientGenerated": false,
"systemId": 6,
"systemName": "CASHFLOW",
"version": 1
}
}
},
{
"cashflow": -342.91,
"tagTreeItem": {
"displayName": "1. Quartal 2020",
"systemId": 634,
"systemName": "2020_Q1",
"systemNameParent": "2020",
"tagTree": {
"description": "Two level tree with years as parents and its periods as children.",
"displayName": "Cashflow",
"isClientGenerated": false,
"systemId": 6,
"systemName": "CASHFLOW",
"version": 1
}
}
},
{
"cashflow": -154.3,
"tagTreeItem": {
"displayName": "Januar 2020",
"systemId": 622,
"systemName": "2020_M01",
"systemNameParent": "2020",
"tagTree": {
"description": "Two level tree with years as parents and its periods as children.",
"displayName": "Cashflow",
"isClientGenerated": false,
"systemId": 6,
"systemName": "CASHFLOW",
"version": 1
}
}
},
{
"cashflow": -29.99,
"tagTreeItem": {
"displayName": "1. Kalenderwoche 2020",
"systemId": 639,
"systemName": "2020_W01",
"systemNameParent": "2020",
"tagTree": {
"description": "Two level tree with years as parents and its periods as children.",
"displayName": "Cashflow",
"isClientGenerated": false,
"systemId": 6,
"systemName": "CASHFLOW",
"version": 1
}
}
}
]
},
"entity": {
"displayName": "USER",
"entityClass": "USER",
"id": "30bd730f-39b5-4646-b8ce-6aad8d95a5e4"
},
"id": "c36e4317-960b-4a03-8d02-4dfce2fc63f6",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/1/",
"rel": "tag_tree"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/1/tag-tree-items/",
"rel": "tag_tree_items"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/1/tag-tree-items/2/",
"rel": "tag_tree_item"
}
],
"tagTreeItem": {
"description": "Transactions including invoices & bills",
"displayName": "Vertragsrechnungen",
"systemId": 2,
"systemName": "BILLS",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isClientGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.7
}
}
}
]

Playground

Headers
Variables
Key
Value

Samples


Contracts

Identifies recurring transactions, broadly referred to as "contracts", by analyzing the user's full transaction history across all connected accounts and banks.

It categorizes each transaction using the classification logic from the categories, insurance-types, and business-partners endpoints.
Once categorized, recurring patterns are identified, and contract-like structures are formed based on transaction frequency, amount regularity, and counterparty consistency.

The system supports a wide range of recurring transaction types, such as rent, utilities, insurance, loans, subscriptions, salary, charity, and any other repeating financial obligations and income streams.
It also includes analytical insights to help with financial forecasting and decision-making.

Key Features

  • Categorization
    Includes classification data from the categories, insurance-types, and business-partners endpoints.

  • Frequency Analysis
    Identifies how often transactions occur and determines recurring patterns (e.g., monthly, quarterly, annually).

  • Statistical Summary
    Provides metrics including mean, median, total volume, standard deviation, and growth rate.

  • Temporal Data
    Reports on first, latest, and predicted next occurrences of a recurring transaction pattern.

  • Amount Development
    Tracks amount evolution and pricing changes over time.

  • Contract Details
    Lists contract and customer numbers, detected from transaction descriptions.

  • Non-Regular Transactions
    Intelligently identifies and separates transactions that don't follow the main contract pattern but are still related to the same contract (e.g., refunds, adjustments, or one-time fees within an energy or insurance contract).

  • Loan & Credit Metadata
    Attempts to estimate loan metadata such as total amount, interest rate, and installment terms where applicable.

  • Active Status
    Indicates whether a contract is currently active based on recent transaction activity.

  • Traceability
    Links back to source transactions and provides chronological amount development over time.

Non-Regular Transaction Handling

Due to non-regular transactions potentially skewing calculations, several statistical attributes are provided multiple times - some including all transactions and others excluding non-regular ones.
This intelligent approach allows for flexible analysis depending on whether refunds and adjustments should be included in averages and projections.

Missing Frequency Information

The system can detect contracts even when no clear frequency is established. Frequency information may be missing for one of two reasons:

  • Single Transaction Contracts: When only one transaction exists but shows clear contract indicators
  • Irregular Timing: When transactions appear contract-related but have inconsistent periods or recent timing changes

For some use cases, the frequency is essential, which is why we implemented a sophisticated fallback mechanism for contracts with only a single transaction.
In such cases, the attribute periodConfidenceLevel expresses the uncertainty of the period. When this attribute is not present, the period can be treated as fully reliable.
Therefore, uncertain periods can be filtered out by excluding cases where periodConfidenceLevel is present and below 1.0.


Get contracts tags

GET
/customer/v2/ai/contracts/

Returns contract analysis for a provided user.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Query Parameters

insuranceOnly

Return only contracts related to insurance

Type
boolean
Examples
falsetrue
insuranceOnlyExtended

Return only contracts related to insurance and home savings plans

Type
boolean
Examples
falsetrue

Responses

Success, tags newly created or read from database

application/json

Example response with a single telecommunications contract

JSON
[
{
"details": {
"amountFirst": -14.99,
"amountLatest": -14.99,
"amountMaximum": -15.79,
"amountMean": -15.15,
"amountMedian": -14.99,
"amountMinimum": -14.99,
"amountNext": -15.01,
"amountTotal": -166.7,
"amountTotalNonRegular": 0,
"amountTotalRegular": -166.7,
"contractNumbers": [
],
"costDevelopment": {
"2024-09-28": -14.99,
"2024-10-28": -15.34,
"2024-11-28": -14.99,
"2024-12-28": -15.79,
"2025-01-28": -14.99,
"2025-02-28": -14.99,
"2025-03-28": -14.99,
"2025-04-28": -14.99,
"2025-05-28": -15.65,
"2025-06-28": -14.99,
"2025-07-28": -14.99
},
"costDevelopmentNonRegular": {
},
"costDevelopmentRegular": {
"2024-09-28": -14.99,
"2024-10-28": -15.34,
"2024-11-28": -14.99,
"2024-12-28": -15.79,
"2025-01-28": -14.99,
"2025-02-28": -14.99,
"2025-03-28": -14.99,
"2025-04-28": -14.99,
"2025-05-28": -15.65,
"2025-06-28": -14.99,
"2025-07-28": -14.99
},
"counterpartyBic": "HYVEDEMMXXX",
"counterpartyIban": "DE16700202700005713153",
"counterpartyName": "Telefónica Germany GmbH & Co. OHG",
"counterpartyNameUltimate": "",
"customerNumbers": [
"8466511587"
],
"dateFirst": "2024-09-28",
"dateLatest": "2025-07-28",
"dateNext": "2025-08-28",
"dateStart": "2024-09-28",
"daysAge": 331,
"growthRate": 0,
"standardDeviation": 0.3,
"status": "ACTIVE",
"transactionIds": [
"1b7558b0-000c-fb24-0e31-1693ae699490",
"1b7fe870-000c-9558-6920-8313f2690ad6",
"1b8ace70-000f-e36a-8733-a1533538483f",
"1b955a70-0004-e2d6-31d8-06f32d6ac043",
"1ba04070-0001-cccb-1b77-6d7383088022",
"1bab2670-0006-2880-6a9f-80a356c9b212",
"1bb4fe70-000e-b1b9-6bf2-66c3e58a5bc1",
"1bbfe0b0-0000-6f63-f8c6-ccf371ab808f",
"1bca6cb0-000c-3339-6f05-e07381c95303",
"1bd552b0-000f-1a82-976c-8ec38439d22c",
"1bdfdeb0-0001-a30e-e6c8-369302db71ae"
],
"transactionIdsNonRegular": [
],
"transactionIdsRegular": [
"1b7558b0-000c-fb24-0e31-1693ae699490",
"1b7fe870-000c-9558-6920-8313f2690ad6",
"1b8ace70-000f-e36a-8733-a1533538483f",
"1b955a70-0004-e2d6-31d8-06f32d6ac043",
"1ba04070-0001-cccb-1b77-6d7383088022",
"1bab2670-0006-2880-6a9f-80a356c9b212",
"1bb4fe70-000e-b1b9-6bf2-66c3e58a5bc1",
"1bbfe0b0-0000-6f63-f8c6-ccf371ab808f",
"1bca6cb0-000c-3339-6f05-e07381c95303",
"1bd552b0-000f-1a82-976c-8ec38439d22c",
"1bdfdeb0-0001-a30e-e6c8-369302db71ae"
]
},
"entity": {
"displayName": "BENUTZER",
"entityClass": "USER",
"id": "29779cf3-06df-401a-ba6c-e93df17895e8",
"userId": "29779cf3-06df-401a-ba6c-e93df17895e8"
},
"id": "24c575f1-79b2-9fa1-dc72-dcf4fbe43432",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/1/",
"rel": "tag_tree_category"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/1/tag-tree-items/",
"rel": "tag_tree_items_category"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/1/tag-tree-items/12/",
"rel": "tag_tree_item_category"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/2/",
"rel": "tag_tree_insurance_type"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/2/tag-tree-items/",
"rel": "tag_tree_items_insurance_type"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/2/tag-tree-items/87/",
"rel": "tag_tree_item_insurance_type"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/4/",
"rel": "tag_tree_period"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/4/tag-tree-items/",
"rel": "tag_tree_items_period"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/4/tag-tree-items/3/",
"rel": "tag_tree_item_period"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/3/",
"rel": "tag_tree_business_partner"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/3/tag-tree-items/",
"rel": "tag_tree_items_business_partner"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/3/tag-tree-items/3279/",
"rel": "tag_tree_item_business_partner"
}
],
"tagTreeItemBusinessPartner": {
"addressCity": "München",
"addressCountry": "Deutschland",
"addressStreet": "Georg-Brauchle-Ring 50",
"addressZip": "80992",
"categories": [
"BILLS_TELECOMMUNICATIONS"
],
"creditorId": "DE9700000000142462",
"displayName": "Telefonica",
"systemId": 3279,
"systemName": "Telefonica Germany GmbH Co OHG",
"tagTree": {
"description": "Single level tag tree of business partners.",
"displayName": "Geschäftspartner",
"isTenantGenerated": false,
"systemId": 3,
"systemName": "BUSINESS_PARTNERS",
"version": 1.91
},
"telephone": "+49 (0)89 / 244 20",
"website": "https://www.telefonica.de/"
},
"tagTreeItemCategory": {
"description": "Payments to telecommunication providers for a mobile or fixed-line network connection",
"displayName": "Internet und Telekommunikation",
"systemId": 12,
"systemName": "BILLS_TELECOMMUNICATIONS",
"systemNameParent": "BILLS",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
},
"tagTreeItemInsuranceType": {
"displayName": "Nicht versicherungsrelevant",
"systemId": 87,
"systemName": "UNRELATED_OTHER",
"systemNameParent": "UNRELATED",
"tagTree": {
"description": "Two level fine grained insurance categorization tag tree.",
"displayName": "Versicherungsarten",
"isTenantGenerated": false,
"systemId": 2,
"systemName": "INSURANCE_TYPES",
"version": 2.41
}
},
"tagTreeItemPeriod": {
"description": "Period of a single month",
"displayName": "Ein Monat",
"systemId": 3,
"systemName": "MONTH_ONE",
"systemNameParent": "MONTH",
"tagTree": {
"description": "Two level periods tag tree.",
"displayName": "Turnus",
"isTenantGenerated": false,
"systemId": 4,
"systemName": "PERIODS",
"version": 0.4
}
}
}
]

Playground

Headers
Variables
Key
Value

Samples


Credit Attributes

Provides comprehensive credit risk assessment by analyzing financial behavior patterns, income stability, expense patterns, and creditworthiness indicators to evaluate a user's financial profile for lending decisions.

Core Financial Analysis

The system combines multiple data sources to create a holistic credit risk profile:

  • Contract Analysis - Leverages the contracts endpoint to identify recurring financial obligations and income streams
  • Life Stage Intelligence - Incorporates life-stages data to assess life situation impact on financial stability
  • Asset Evaluation - Includes bank products and investment analysis to determine overall financial position
  • Risk Factor Detection - Identifies payment issues, gambling behavior, and other creditworthiness indicators

Key Financial Metrics

The analysis generates comprehensive metrics across multiple financial dimensions:

Income Analysis

  • Total Income - Complete monthly income assessment across all sources
  • Salary Income - Regular employment income with employment length tracking
  • Fixed Income - Contract-based recurring income (excluding salary)
  • Variable Income - Non-contract irregular income streams
  • Windfall Detection - Identifies unusually large income transactions that may skew regular patterns

Expense Analysis

  • Total Spending - Complete monthly expense overview
  • Fixed Spending - Contract-based recurring expenses
  • Variable Spending - Non-contract discretionary spending
  • Savings Behavior - Monthly savings patterns and capacity

Credit-Specific Metrics

  • Active Credit Contracts - Current mortgage, financial credit, and leasing obligations
  • Passive Credit Contracts - Historical credit arrangements
  • Credit Card Usage - Number of active credit cards and usage patterns
  • Payment Reliability - Risk indicators including return debits, reminder charges, and debt collection

Advanced Risk Assessment

Life Stage Context
Analyzes four key life domains relevant to creditworthiness:

  • Labor Market Status - Employment stability and career stage
  • Housing Situation - Homeownership vs. tenancy status
  • Relationship Status - Marital status and household stability
  • Parenthood - Family responsibilities and associated financial commitments

Financial Health Indicators

  • Net Cashflow - Monthly surplus/deficit with positive cashflow ratio
  • Income Stability - Employment length and contract regularity
  • Risk Activities - Gambling expenses and other high-risk financial behaviors
  • Payment Issues - Historical payment failures and collection activities

Statistical Analysis Window

Analysis covers a 6-month rolling window to ensure:

  • Statistical relevance with sufficient transaction history
  • Capture of recent financial behavior patterns
  • Adjustment for seasonal variations in income and expenses
  • Focus on current financial capacity rather than outdated patterns

Asset and Investment Integration

Bank Products

  • Account balances and overdraft utilization
  • Credit limits and drawn amounts
  • Product diversification analysis

Investment Portfolio

  • Investment holdings and market exposure
  • Risk tolerance assessment through investment choices
  • Overall asset allocation patterns

Practical Applications

  • Loan Origination - Comprehensive risk assessment for loan applications
  • Credit Limit Determination - Data-driven credit limit setting
  • Financial Product Matching - Recommend appropriate financial products based on risk profile
  • Portfolio Risk Management - Monitor existing customer credit risk changes

Related Endpoints

  • affordability - Provides complementary financial analysis focusing on income-to-expense ratios, discretionary income calculation, and financial capacity assessment for enhanced credit decisions

Get credit attributes tags

GET
/customer/v2/ai/credit-attributes/

Returns comprehensive credit risk assessment for a provided user.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Responses

Success, tags newly created or read from database

application/json
JSON
{
"assets": {
"investments": [
],
"products": [
{
"balance": 2145.78,
"bic": "XXX12345678",
"creditDrawn": 100,
"creditLimit": 2045.78,
"currency": "EUR",
"iban": "DE001234567890123456AI",
"id": "2aa5b423-8d68-4ad3-8b80-5d34d48cb43b",
"lastUpdated": "2023-07-13 14:09:06",
"name": "Girokonto",
"overdraftLimit": 3000,
"owner": "Li Wang",
"providerId": "309b5ddf-94e9-4833-8610-7096b8fae79a",
"providerName": "Demo Provider",
"status": "VOLLSTAENDIG",
"type": "GIROKONTO"
}
]
},
"budget": {
"expenses": {
"fixedSpending": {
"statistics": {
"max": 1572.24,
"mean": 1381.62,
"median": 1376,
"min": 1214.33
}
},
"totalSpending": {
"statistics": {
"max": 2351.1,
"mean": 1835.04,
"median": 1744.18,
"min": 1568.56
}
},
"variableSpending": {
"statistics": {
"max": 1133.32,
"mean": 453.42,
"median": 363.29,
"min": 35.19
}
}
},
"income": {
"fixedIncome": {
"contracts": [
{
"details": {
"amountFirst": 204,
"amountLatest": 204,
"amountMaximum": 204,
"amountMean": 204,
"amountMedian": 204,
"amountMinimum": 204,
"amountNext": 204,
"amountTotal": 2448,
"amountTotalNonRegular": 0,
"amountTotalRegular": 2448,
"contractNumbers": [
"KG237002FK188590"
],
"costDevelopment": {
"2022-08-09": 204,
"2022-09-09": 204,
"2022-10-09": 204,
"2022-11-09": 204,
"2022-12-09": 204,
"2023-01-09": 204,
"2023-02-09": 204,
"2023-03-09": 204,
"2023-04-09": 204,
"2023-05-09": 204,
"2023-06-09": 204,
"2023-07-09": 204
},
"costDevelopmentRegular": {
"2022-08-09": 204,
"2022-09-09": 204,
"2022-10-09": 204,
"2022-11-09": 204,
"2022-12-09": 204,
"2023-01-09": 204,
"2023-02-09": 204,
"2023-03-09": 204,
"2023-04-09": 204,
"2023-05-09": 204,
"2023-06-09": 204,
"2023-07-09": 204
},
"counterpartyBic": "MARKDEF1760",
"counterpartyIban": "DE077600000000760016",
"counterpartyName": "Bundesagentur fur Arbeit - Familienkasse",
"counterpartyNameUltimate": "",
"customerNumbers": [
],
"dateFirst": "2022-08-09",
"dateLatest": "2023-07-09",
"dateNext": "2023-08-09",
"dateStart": "2022-08-09",
"daysAge": 338,
"growthRate": 0,
"standardDeviation": 0,
"status": "ACTIVE",
"transactionIds": [
"46849210-3acc-4817-9b66-64f9a9cd5e98",
"4485e5f6-c177-44b5-83a7-1d7597405aa3",
"c6df990e-7c4f-4447-a565-2dd360c96391",
"97587d3f-9854-42f0-849c-4981150f3862",
"607c84b0-c25b-44cc-b22f-6d04572ce820",
"50b81b1c-f39c-4102-93a9-cb5db565ed29",
"6ca60e80-c006-4003-9b35-486bb407c32d",
"ee76642a-b4c0-4b76-95dd-8b52767fe4ad",
"5e4d77f5-40fd-46c4-93eb-f317a4c93cf0",
"b144924b-10c0-4c3e-8cef-b92d5f970636",
"15fdcf5a-f923-45d4-8236-e77254726c82",
"cd57cc2e-db4c-4af9-bde4-f0a1caa4d419"
],
"transactionIdsNonRegular": [
],
"transactionIdsRegular": [
"46849210-3acc-4817-9b66-64f9a9cd5e98",
"4485e5f6-c177-44b5-83a7-1d7597405aa3",
"c6df990e-7c4f-4447-a565-2dd360c96391",
"97587d3f-9854-42f0-849c-4981150f3862",
"607c84b0-c25b-44cc-b22f-6d04572ce820",
"50b81b1c-f39c-4102-93a9-cb5db565ed29",
"6ca60e80-c006-4003-9b35-486bb407c32d",
"ee76642a-b4c0-4b76-95dd-8b52767fe4ad",
"5e4d77f5-40fd-46c4-93eb-f317a4c93cf0",
"b144924b-10c0-4c3e-8cef-b92d5f970636",
"15fdcf5a-f923-45d4-8236-e77254726c82",
"cd57cc2e-db4c-4af9-bde4-f0a1caa4d419"
]
},
"entity": {
"displayName": "BENUTZER",
"entityClass": "USER",
"id": "ae91796e-556a-46b6-83a3-dc1d56657f79",
"userId": "ae91796e-556a-46b6-83a3-dc1d56657f79"
},
"id": "15ba9fbd-c1f3-4f1d-87af-a73a8beb7813",
"tagTreeItemBusinessPartner": {
"addressCity": "Nürnberg",
"addressCountry": "Deutschland",
"addressStreet": "Regensburger Straße 104",
"addressZip": "90478",
"categories": [
],
"displayName": "Bundesagentur für Arbeit (BA)",
"systemId": 4392,
"systemName": "Bundesagentur für Arbeit",
"tagTree": {
"description": "Single level tag tree of business partners.",
"displayName": "Geschäftspartner",
"isTenantGenerated": false,
"systemId": 3,
"systemName": "BUSINESS_PARTNERS",
"version": 1.91
},
"telephone": "0911/179-0",
"website": "https://www.arbeitsagentur.de/"
},
"tagTreeItemCategory": {
"description": "Income from gov. child benefits",
"displayName": "Staatliche Förderung für Familie und Kinder",
"systemId": 52,
"systemName": "INCOME_STATEFAMILY",
"systemNameParent": "INCOME",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
},
"tagTreeItemInsuranceType": {
"displayName": "Nicht versicherungsrelevant - Einnahmen",
"systemId": 28,
"systemName": "INCOME_UNRELATED",
"systemNameParent": "INCOME",
"tagTree": {
"description": "Two level fine grained insurance categorization tag tree.",
"displayName": "Versicherungsarten",
"isTenantGenerated": false,
"systemId": 2,
"systemName": "INSURANCE_TYPES",
"version": 2.41
}
},
"tagTreeItemPeriod": {
"description": "Period of a single month",
"displayName": "Ein Monat",
"systemId": 3,
"systemName": "MONTH_ONE",
"systemNameParent": "MONTH",
"tagTree": {
"description": "Two level periods tag tree.",
"displayName": "Turnus",
"isTenantGenerated": false,
"systemId": 4,
"systemName": "PERIODS",
"version": 0.4
}
}
}
],
"statistics": {
"max": 204,
"mean": 204,
"median": 204,
"min": 204
}
},
"salary": {
"contracts": [
{
"details": {
"amountFirst": 4856.84,
"amountLatest": 4856.84,
"amountMaximum": 4856.84,
"amountMean": 4856.84,
"amountMedian": 4856.84,
"amountMinimum": 4856.84,
"amountNext": 4856.84,
"amountTotal": 33997.88,
"amountTotalNonRegular": 0,
"amountTotalRegular": 33997.88,
"contractNumbers": [
],
"costDevelopment": {
"2022-12-29": 4856.84,
"2023-01-29": 4856.84,
"2023-02-28": 4856.84,
"2023-03-29": 4856.84,
"2023-04-29": 4856.84,
"2023-05-29": 4856.84,
"2023-06-29": 4856.84
},
"costDevelopmentRegular": {
"2022-12-29": 4856.84,
"2023-01-29": 4856.84,
"2023-02-28": 4856.84,
"2023-03-29": 4856.84,
"2023-04-29": 4856.84,
"2023-05-29": 4856.84,
"2023-06-29": 4856.84
},
"counterpartyBic": "",
"counterpartyIban": "DE100456789",
"counterpartyName": "The Company",
"counterpartyNameUltimate": "",
"customName": "The Company",
"customerNumbers": [
],
"dateFirst": "2022-12-29",
"dateLatest": "2023-06-29",
"dateNext": "2023-07-31",
"dateStart": "2022-12-29",
"daysAge": 196,
"growthRate": 0,
"standardDeviation": 0,
"status": "ACTIVE",
"transactionIds": [
"6a8b60ba-644e-41e7-b105-3313e1323399",
"59703c71-a780-4392-a7b5-3dd177467347",
"99d14818-e22a-4f4c-a0d5-83a75efbe36e",
"aef38a3f-2e18-4734-888d-95f5c5249d68",
"ff5af17a-94be-45fa-83da-cf205122231d",
"2bffbd6a-52a8-4d35-83aa-b044eb86711e",
"ecee781a-732b-4f56-935c-956c3a7db3b9"
],
"transactionIdsNonRegular": [
],
"transactionIdsRegular": [
"6a8b60ba-644e-41e7-b105-3313e1323399",
"59703c71-a780-4392-a7b5-3dd177467347",
"99d14818-e22a-4f4c-a0d5-83a75efbe36e",
"aef38a3f-2e18-4734-888d-95f5c5249d68",
"ff5af17a-94be-45fa-83da-cf205122231d",
"2bffbd6a-52a8-4d35-83aa-b044eb86711e",
"ecee781a-732b-4f56-935c-956c3a7db3b9"
]
},
"entity": {
"displayName": "BENUTZER",
"entityClass": "USER",
"id": "ae91796e-556a-46b6-83a3-dc1d56657f79",
"userId": "ae91796e-556a-46b6-83a3-dc1d56657f79"
},
"id": "0b09ad15-c24a-45c9-a7d0-f16b7991381c",
"tagTreeItemBusinessPartner": {
"categories": [
"OTHER_OTHER"
],
"description": "Unknown business partner, for business partners with custom name",
"displayName": "Unbekannter Geschäftspartner",
"systemId": 4384,
"systemName": "UNKNOWN",
"tagTree": {
"description": "Single level tag tree of business partners.",
"displayName": "Geschäftspartner",
"isTenantGenerated": false,
"systemId": 3,
"systemName": "BUSINESS_PARTNERS",
"version": 1.91
}
},
"tagTreeItemCategory": {
"description": "Income from salary payments",
"displayName": "Gehalt",
"systemId": 49,
"systemName": "INCOME_SALARY",
"systemNameParent": "INCOME",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
},
"tagTreeItemInsuranceType": {
"displayName": "Nicht versicherungsrelevant - Einnahmen",
"systemId": 28,
"systemName": "INCOME_UNRELATED",
"systemNameParent": "INCOME",
"tagTree": {
"description": "Two level fine grained insurance categorization tag tree.",
"displayName": "Versicherungsarten",
"isTenantGenerated": false,
"systemId": 2,
"systemName": "INSURANCE_TYPES",
"version": 2.41
}
},
"tagTreeItemPeriod": {
"description": "Period of a single month",
"displayName": "Ein Monat",
"systemId": 3,
"systemName": "MONTH_ONE",
"systemNameParent": "MONTH",
"tagTree": {
"description": "Two level periods tag tree.",
"displayName": "Turnus",
"isTenantGenerated": false,
"systemId": 4,
"systemName": "PERIODS",
"version": 0.4
}
}
}
],
"lengthOfEmployment": 196,
"statistics": {
"max": 4856.84,
"mean": 4856.84,
"median": 4856.84,
"min": 4856.84
}
},
"totalIncome": {
"statistics": {
"max": 5060.84,
"mean": 5060.84,
"median": 5060.84,
"min": 5060.84
}
},
"variableIncome": {
"statistics": {
"max": 0,
"mean": 0,
"median": 0,
"min": 0
}
},
"windfalls": [
]
},
"net": {
"positiveCashflowRatio": 1,
"statistics": {
"max": 3492.28,
"mean": 3225.8,
"median": 3316.66,
"min": 2709.74
}
},
"savings": {
"statistics": {
"max": 0,
"mean": 0,
"median": 0,
"min": 0
}
}
},
"credit": {
"financialCredit": {
"activeContracts": [
],
"passiveContracts": [
]
},
"leasing": {
"activeContracts": [
],
"passiveContracts": [
]
},
"mortgage": {
"activeContracts": [
],
"passiveContracts": [
]
}
},
"flags": {
"creditCards": 0,
"debtCollection": [
],
"reminderCharges": [
],
"returnedDebitNotes": [
{
"amount": 209.99,
"id": "27b7c777-4ccd-4f41-a145-4e7e672ec56f",
"postingDatetime": "2022-10-07 00:00:00",
"product": "2aa5b423-8d68-4ad3-8b80-5d34d48cb43b",
"provider": "309b5ddf-94e9-4833-8610-7096b8fae79a",
"tags": {
"businessPartner": {
"entity": {
"displayName": "Kontoumsatz",
"entityClass": "TRANSACTION",
"id": "27b7c777-4ccd-4f41-a145-4e7e672ec56f",
"userId": "ae91796e-556a-46b6-83a3-dc1d56657f79"
},
"id": "6aa296e1-f296-47a7-b2ca-63111708011f",
"tagTreeItem": {
"description": "Unknown business partner, for business partners with custom name",
"displayName": "Unbekannter Geschäftspartner",
"systemId": 4384,
"systemName": "UNKNOWN",
"tagTree": {
"description": "Single level tag tree of business partners.",
"displayName": "Geschäftspartner",
"isTenantGenerated": false,
"systemId": 3,
"systemName": "BUSINESS_PARTNERS",
"version": 1.91
}
}
},
"category": {
"entity": {
"displayName": "Kontoumsatz",
"entityClass": "TRANSACTION",
"id": "27b7c777-4ccd-4f41-a145-4e7e672ec56f",
"userId": "ae91796e-556a-46b6-83a3-dc1d56657f79"
},
"id": "45358886-7619-458e-a45a-d047537a6228",
"tagTreeItem": {
"description": "Transactions involving failed debit payments that are returned.",
"displayName": "Rücklastschriften",
"systemId": 48,
"systemName": "INCOME_RETURNDEBIT",
"systemNameParent": "INCOME",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
}
},
"insurance": {
"entity": {
"displayName": "Kontoumsatz",
"entityClass": "TRANSACTION",
"id": "27b7c777-4ccd-4f41-a145-4e7e672ec56f",
"userId": "ae91796e-556a-46b6-83a3-dc1d56657f79"
},
"id": "75483a74-9716-43cf-9266-d69714cfb94c",
"tagTreeItem": {
"displayName": "Nicht versicherungsrelevant - Einnahmen",
"systemId": 28,
"systemName": "INCOME_UNRELATED",
"systemNameParent": "INCOME",
"tagTree": {
"description": "Two level fine grained insurance categorization tag tree.",
"displayName": "Versicherungsarten",
"isTenantGenerated": false,
"systemId": 2,
"systemName": "INSURANCE_TYPES",
"version": 2.41
}
}
}
}
}
],
"riskyPayment": {
"statistics": {
"max": 0,
"mean": 0,
"median": 0,
"min": 0
}
}
},
"lifeStages": {
"housing": {
"entity": {
"displayName": "BENUTZER",
"entityClass": "USER",
"id": "ae91796e-556a-46b6-83a3-dc1d56657f79",
"userId": "ae91796e-556a-46b6-83a3-dc1d56657f79"
},
"id": "0f1e88e3-e91f-4be9-b826-c8a6bc983c08",
"tagTreeItem": {
"displayName": "Mieter",
"domain": {
"description": "The user's ownership status for their current home",
"displayName": "Wohnsituation",
"systemId": 4,
"systemName": "HOUSING",
"tagTree": {
"description": "Tag tree for life domains",
"displayName": "Lebensdomänen",
"isTenantGenerated": false,
"systemId": 10,
"systemName": "LIFE_DOMAINS",
"version": 0.3
}
},
"systemId": 15,
"systemName": "TENANCY",
"tagTree": {
"description": "Single level life stage tag tree.",
"displayName": "Lebensphasen",
"isTenantGenerated": false,
"systemId": 12,
"systemName": "LIFE_STAGES",
"version": 0.6
}
}
},
"labourMarket": {
"entity": {
"displayName": "BENUTZER",
"entityClass": "USER",
"id": "ae91796e-556a-46b6-83a3-dc1d56657f79",
"userId": "ae91796e-556a-46b6-83a3-dc1d56657f79"
},
"id": "46a684bc-7265-44f4-acd2-c35f9b5279ea",
"tagTreeItem": {
"displayName": "Angestellt",
"domain": {
"description": "The user's state with respect to employment and education",
"displayName": "Arbeitsmarkt",
"systemId": 1,
"systemName": "LABOUR_MARKET",
"tagTree": {
"description": "Tag tree for life domains",
"displayName": "Lebensdomänen",
"isTenantGenerated": false,
"systemId": 10,
"systemName": "LIFE_DOMAINS",
"version": 0.3
}
},
"systemId": 4,
"systemName": "EMPLOYMENT",
"tagTree": {
"description": "Single level life stage tag tree.",
"displayName": "Lebensphasen",
"isTenantGenerated": false,
"systemId": 12,
"systemName": "LIFE_STAGES",
"version": 0.6
}
}
},
"parenthood": {
"entity": {
"displayName": "BENUTZER",
"entityClass": "USER",
"id": "ae91796e-556a-46b6-83a3-dc1d56657f79",
"userId": "ae91796e-556a-46b6-83a3-dc1d56657f79"
},
"id": "d0aac099-261b-4d97-aec9-239ddbf28d97",
"tagTreeItem": {
"displayName": "Elternteil",
"domain": {
"description": "The user's parental status",
"displayName": "Elternschaft",
"systemId": 2,
"systemName": "PARENTHOOD",
"tagTree": {
"description": "Tag tree for life domains",
"displayName": "Lebensdomänen",
"isTenantGenerated": false,
"systemId": 10,
"systemName": "LIFE_DOMAINS",
"version": 0.3
}
},
"systemId": 7,
"systemName": "PARENTHOOD",
"tagTree": {
"description": "Single level life stage tag tree.",
"displayName": "Lebensphasen",
"isTenantGenerated": false,
"systemId": 12,
"systemName": "LIFE_STAGES",
"version": 0.6
}
}
},
"relationship": {
}
}
}

Playground

Headers

Samples


Disposable Money

Estimates a user's currently disposable money by analyzing their financial activity within the current salary cycle, from the last salary payment up to the next expected one.

The endpoint processes transactions by categorizing them according to the categories endpoint, generating contracts from the contracts endpoint, and predicting future cashflows to provide comprehensive financial insights for the current salary period.

Key Features

  • Salary Cycle Analysis
    Focuses analysis on the current salary cycle, providing relevant insights for the specific time period between salary payments.

  • Multi-Source Integration
    Combines transaction categorization, contract analysis, and cashflow predictions to deliver accurate disposable money estimates.

  • Real-Time Calculations
    Provides current financial position as well as projections for the remainder of the salary cycle.

  • Fixed vs. Flexible Expenses
    Distinguishes between predictable contract-based expenses (fixed) and variable spending patterns (flexible) for more accurate forecasting.

Practical Applications

This endpoint empowers users to make informed financial decisions by providing clarity on their available funds throughout the salary cycle:

  • Investment Planning - Safely allocate surplus funds for investments or savings without compromising essential expenses
  • Affordability Assessment - Determine whether you can make a purchase now or should wait until the next salary arrives
  • Budget Optimization - Make data-driven spending decisions based on projected cashflows rather than current account balance alone

Important Notes

Salary Detection Requirement: The detection of an active salary is fundamental to this endpoint. If no salary payment can be identified, the response will be empty, even if other regular income exists.


Get disposable money tag

GET
/customer/v2/ai/disposable-money/

Returns disposable money analysis based on salary cycle and spending patterns for a provided user.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Responses

Success, tag newly created or read from database

application/json

Example with disposable money information, active salary detected.

JSON
{
"details": {
"amountCashflow": -1105.93,
"amountCurrentlyLeft": 3750.91,
"amountDisposableMoney": 3704.26,
"amountExpectedFixedCashflow": -24.98,
"amountExpectedFlexCashflow": -21.67,
"amountExpectedLeft": 3725.93,
"amountExpectedLeftDaily": 1241.98,
"amountSalaryLatest": 4856.84,
"amountSalaryNext": 4856.84,
"dateSalaryLatest": "2025-07-29",
"dateSalaryNext": "2025-08-29",
"daysUntilSalary": 3
},
"entity": {
"displayName": "BENUTZER",
"entityClass": "USER",
"id": "29779cf3-06df-401a-ba6c-e93df17895e8",
"userId": "29779cf3-06df-401a-ba6c-e93df17895e8"
},
"id": "182ee4fc-ed82-6e00-2ab3-ed0721b20ddc",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/9/",
"rel": "tag_tree"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/9/tag-tree-items/",
"rel": "tag_tree_items"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/9/tag-tree-items/2/",
"rel": "tag_tree_item"
}
],
"tagTreeItem": {
"description": "Information about the disposable money",
"displayName": "Informationen über frei verfügbares Geld",
"systemId": 2,
"systemName": "DISPOSABLEMONEY_INFORMATION",
"tagTree": {
"description": "Disposable money tag tree with single parent and child tag.",
"displayName": "Einkommensüberschuss",
"isTenantGenerated": false,
"systemId": 9,
"systemName": "DISPOSABLE_MONEY",
"version": 0.1
}
}
}

Playground

Headers

Samples


Life

Analyzes a user's life journey by detecting both current life stages and significant life events through comprehensive transaction analysis.

The following two endpoints provide complementary perspectives on a user's personal and financial development:

  • Life Stages (/life/stages/) - Identifies current states and phases across four key life domains
  • Life Events (/life/events/) - Detects significant transitions and milestones with historical dates

Life Stages

Life stages represent ongoing states or phases in a user's life, detected through contract analysis and transaction patterns.
The analysis covers four essential domains:

  • Labour Market - Professional and academic career status
  • Parenthood - Family status and presence of children
  • Housing - Ownership and rental arrangements for accommodation
  • Savings - Retirement preparation and savings activities

Life Events

Life events capture significant moments of change or transition in a user's life.
These are time-specific occurrences that often mark the beginning or end of a life stage.

  • Career Milestones - First employment, job changes, career transitions
  • Housing Changes - First apartment, relocations, homeowner-ship
  • Family Events - Marriage, birth of children, family changes
  • Financial Transitions - Major income changes, retirement events

Key Differences

  • Life Stages focus on current status - "What is the user's situation now?"
  • Life Events focus on historical transitions - "When did significant changes occur?"
  • Complementary Insights - Together they provide a complete picture of life progression

Practical Applications

  • Financial Planning - Align products and services with life phase and recent changes
  • Risk Assessment - Understand stability vs. transition periods in user's life
  • Personalized Offers - Target recommendations based on both current needs and recent events
  • Customer Journey Mapping - Track progression through different life phases over time

Get life events tags

GET
/customer/v2/ai/life-events/

Returns the life events for a provided user.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Responses

Success, tags newly created or read from database

application/json
JSON
[
{
"details": {
"eventDate": "2019-07-01"
},
"entity": {
"displayName": "USER",
"entityClass": "USER",
"id": "9b4a6348-5320-4a07-a789-faecc0a9821a"
},
"id": "094f9afc-9a30-4071-bc9d-0ae6a6860eaa",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/10/",
"rel": "tag_tree"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/10/tag-tree-items/",
"rel": "tag_tree_items"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/10/tag-tree-items/931/",
"rel": "tag_tree_item"
}
],
"tagTreeItem": {
"displayName": "Ende Mietverhältnis",
"systemId": 931,
"systemName": "TENANCY_END",
"tagTree": {
"description": "Single level life event tag tree, usually with both start and end tags.",
"displayName": "Lebensereignisse",
"isClientGenerated": false,
"systemId": 10,
"systemName": "LIFE_EVENTS",
"version": 0.3
}
}
}
]

Playground

Headers

Samples


Sales Triggers

Identifies sales opportunities by analyzing a user's financial profile, life events, and insurance gaps to detect when they may be receptive to specific financial products or services.

This endpoint leverages data from the contracts, life-events, and life-stages endpoints to identify optimal moments for financial product recommendations.
By analyzing patterns in income, expenses, life transitions, and insurance coverage, it determines when users are most likely to need and purchase financial products.

How Detection Works

The endpoint analyzes user data across multiple dimensions to identify sales opportunities:

  • Insurance Gap Analysis - Detects missing essential insurance products (liability, occupational disability, private health insurance)
  • Life Event Recognition - Identifies significant life changes that typically drive financial product needs
  • Financial Pattern Analysis - Recognizes income increases, savings potential, and windfall events
  • Behavioral Triggers - Combines multiple indicators to determine optimal sales timing

Sales Trigger Categories

Missing Insurance Products:

  • Private Liability Insurance - User lacks basic liability coverage
  • Occupational Disability Insurance - Missing income protection for work-related disabilities
  • Private Health Insurance - Absent private health coverage (triggered only for high earners €3,200+ monthly)

Life Event Triggers:

  • First Apartment - User has moved to their first independent residence
  • New Apartment - User has relocated, indicating potential insurance updates needed
  • First Employment - User has entered the workforce for the first time
  • New Employment - User has changed jobs, potentially affecting insurance needs
  • First Child - User has become a parent, creating new protection needs

Financial Opportunity Triggers:

  • Salary Increase - User has received a significant pay raise, increasing purchasing power
  • Savings Potential - User demonstrates consistent ability to save money over time
  • Large Income Event - User has received substantial one-time income (2x+ average monthly income)

Practical Applications

This endpoint enables financial institutions and advisors to:

  • Personalized Marketing - Target users with relevant product offers at optimal times
  • Needs-Based Selling - Identify genuine product gaps rather than generic sales approaches
  • Lifecycle Management - Align product recommendations with natural life transitions
  • Risk Assessment - Understand which users may urgently need certain protections

Flexible Configuration

The sales trigger system is highly adaptable to specific business needs and can be extended significantly:

  • Customizable Thresholds - All detection parameters can be adjusted (income thresholds, time windows, savings requirements, etc.)
  • New Trigger Development - Additional sales triggers can be created for specific products, market segments, or business strategies
  • Industry-Specific Adaptations - Triggers can be tailored for different financial sectors (banking, insurance, investment, etc.)
  • Advanced Logic - Complex multi-factor triggers combining various life events, financial patterns, and behavioral indicators can be implemented

This foundation provides extensive scalability for sophisticated sales intelligence systems tailored to unique business requirements.

To get a full list of sales triggers, use:

GET /tags/v1/tags/tag-trees/5/tag-tree-items/


Get sales triggers tags

GET
/customer/v2/ai/sales-triggers/

Returns sales triggers analysis for a provided user.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Query Parameters

threshold

Sales trigger savings potential: Threshold amount

Type
integer
Examples
1002505001000
Default
250
salaryRaiseThreshold

Sales trigger salary raise: Increase threshold

Type
number
Examples
0.10.20.25
Default
0.2

Responses

Success, tags newly created or read from database

application/json
JSON
[
{
"entity": {
"displayName": "USER",
"entityClass": "USER",
"id": "f1af4066-33cd-4f63-94b6-dafc633b9aff"
},
"id": "fa7dd6b1-0f58-4389-8cc8-954eb30095dd",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/5/",
"rel": "tag_tree"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/5/tag-tree-items/",
"rel": "tag_tree_items"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/5/tag-tree-items/247/",
"rel": "tag_tree_item"
}
],
"tagTreeItem": {
"description": "Trigger for a missing private liability insurance",
"displayName": "Trigger für eine fehlende Privathaftpflichtversicherung",
"systemId": 247,
"systemName": "MISSING_INSURANCE_LIABILITY_PRIVATE",
"systemNameParent": "MISSING",
"tagTree": {
"description": "Two level sales trigger tag tree.",
"displayName": "Sales Trigger",
"isClientGenerated": false,
"systemId": 5,
"systemName": "SALES_TRIGGERS",
"version": 0.1
}
}
}
]

Playground

Headers
Variables
Key
Value

Samples


Tagging Rules

Provides user-defined transaction tagging rules for automated categorization based on counterparty information.

Tagging rules allow users to create custom categorization logic that takes precedence over AI-based classification. When a transaction matches an existing tagging rule, it gets automatically tagged with the specified tag tree item instead of running through the categorization model.

Rule Structure

Each tagging rule consists of:

  • Counterparty Information - Name and IBAN used to identify matching transactions
  • Tag Tree Item - The classification label to apply when the rule matches (e.g., LIVING_GROCERIES from the CATEGORIES tag tree)

Rule Matching Logic

Tagging rules are applied to future transactions based on counterparty matching:

  • Both counterparty name and IBAN are used for precise transaction identification
  • When a transaction's counterparty information matches an existing rule, the associated tag tree item is automatically applied
  • This automated tagging bypasses the standard AI categorization process, ensuring consistent classification for specific counterparties

Rule Management Constraints

Requirements: At least one of counterparty name or IBAN must exist

Uniqueness: Each user can only have one tagging rule per unique counterparty (name and IBAN combination).
Attempting to create duplicate rules for the same counterparty will overwrite the existing rule

Modification: To change the tag tree item, a new rule must be created which replaces the existing rule

Payment Service Providers: Be aware that some payment service providers, such as PayPal, themselves act as counterparties for transactions.
In such cases, the counterparty name and IBAN may not reflect the actual merchant or service provider.
Users should consider this when creating tagging rules to ensure accurate categorization.
This limitation will be addressed in future updates to further enhance the tagging rule functionality.

Integration with Tag System

Tagging rules leverage the platform's standardized tag taxonomy:

  • The same Tag Trees and Tag Tree Items are used for consistent classification
  • For instance, a rule can specify the Tag Tree Item with the system name LIVING_GROCERIES from the CATEGORIES Tag Tree

Practical Applications

  • Personal Categorization - Override AI suggestions with user-preferred classifications
  • Bulk Processing - Apply consistent tagging to historical and future transactions from the same counterparty

Get rules

GET
/customer/v2/ai/tagging-rules/

Returns a list of all tagging rules for a specific user.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Query Parameters

tagTreeId

ID of a tag tree. If missing, all rules are selected.

Type
integer
Examples
159
Minimum
1

Responses

Success, rules read from database

application/json
JSON
[
{
"counterpartyIban": "DE42500105174896827935",
"counterpartyName": "Müller Drogerie",
"id": "43a70053-dc94-40fb-b523-49d2e7782780",
"tagTreeItem": {
"description": "Payments from grocery shopping",
"displayName": "Lebensmittel",
"systemId": 67,
"systemName": "LIVING_GROCERIES",
"systemNameParent": "LIVING",
"tagTree": {
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isTenantGenerated": false,
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.71
}
},
"user": "0e3cb7d1-f17e-3924-4d78a-21d3590dfe58"
}
]

Playground

Headers
Variables
Key
Value

Samples


Categories

Provides categorized transactions based on everyday spending types such as groceries shopping or rental payments.

The categories are a two-level hierarchy, where the first level is the main category, such as Living and the second level is a subcategory such as Clothing and Acessories. The endpoint strongly relates to the endpoint insurance-types. If an insurance type is detected, the category is set to INSURANCE and the main class of the insurance type, the division, is used as the subcategory.

To get the full list of categories, use: GET /tags/v1/tags/tag-trees/1/tag-tree-items/

Categorization Logic

We use a hybrid model, that combines a basic model and an AI model. The basic model runs first. If it cannot find a category, the AI model runs as well. If the found category has a sufficient confidence, it is returned. If the basic model yields multiple tags, the AI model runs as well. Majority voting in combination with a confidence threshold is used to determine the best fitting category.

Basic Model

The basic model searches for keywords and regular expression based substrings in note to payee, counterparty name and posting text. It includes the main categories of the insurance classifier to precisely detect insurance transactions. There are several additional steps for specific types of transactions, counterparties and categories to further improve the accuracy of this model.

Artificial Intelligence Model

The model architecture is a bidirectional recurrent neural network with long short-term memory and an attention mechanism. The samples used for training this model do not contain any user related identifiers. The training encompasses semantically-meaningful word and sub-word embeddings, pre-trained in an unsupervised setting as well as human and automatically labeled data, providing a total of more than a million training samples. Even before a human labeler processes a transaction, each transaction gets anonymized. Amounts get slightly shifted randomly and all sensible information such as names and addresses are automatically removed from all texts. With this process, data privacy is fully ensured.


Update categories tags

PUT
/customer/v2/bankzugaenge/{accessId}/{productId}/kontoumsaetze/{transactionId}

Applies corrections to the categorization of transactions.

Input contains the tag tree item(s) that should be used for re-categorization.
All provided tag tree items have to be valid.
If a single tag tree item is provided, all transaction tags receive this tag tree item.
If multiple tag tree items are provided, each transaction tag receives a different tag tree
item. Make sure to provide exactly as many tag tree items as transactions in this scenario.

The flag createRule creates a user specific rule that automatically categorizes this
counterparty with the provided tag tree item in all future transactions. This is a smart
solution to eradicate a recurring re-categorization process.

The flag changeExisting re-categorizes all existing transactions of the same counterparty.

The tagTreeItem(s) have to include a tagTree and have to be wrapped in tags: [].

The re-categorization relies on the systemName value of tagTreeItem and tagTree, all other
fields are ignored.

Example:

{
  "tags": [
    {
      "tagTreeItem": {
        "systemId": 67,
        "systemName": "LIVING_GROCERIES",
        "tagTree": {
          "systemId": 1,
          "systemName": "CATEGORIES"
        }
      }
    }
  ]
}

To get the full list of categories, use:

GET /tags/v1/tags/tag-trees/1/tag-tree-items/

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Path Parameters

accessId*

ID of the bank access

Type
string
Required
Examples
"a61f7249-7b32-42db-add0-1d4ee565aafc""0a461cd1-116b-4039-be98-543442ac4d75"
productId*

ID of the bank product

Type
string
Required
Examples
"DE62500105174269735379""DE85500105178475866425"
transactionId*

ID of the transaction

Type
string
Required
Examples
"ee8bb972-3a7d-4bb4-bfb8-a96abf4eecfd""473d3595-e08a-4e0c-a88b-ba0f77112d1b"

Query Parameters

changeExisting

This option re-categorizes all existing transactions with this counterparty according to the provided category

Type
boolean
Examples
falsetrue
Default
false
createRule

This option creates a rule for this counterparty. All future transactions with this counterparty will be categorized according to the provided category.

Type
boolean
Examples
falsetrue
Default
false

Request Body

application/json
JSON
{
"tags": {
"systemId": 17,
"systemName": "LIVING_GROCERIES",
"tagTree": {
"systemId": 1,
"systemName": "CATEGORIES"
}
}
}

Responses

Request fulfilled, nothing follows

Playground

Headers
Variables
Key
Value
Body

Samples


Business Partners

Identifies normalized business partners and returns detailed information such as address and website.

A business partner is the financial entity or individual that provides the good or service that the transaction is related to. It differs from the payment handler or the bank.
For instance, if you pay your rent, the business partner is your landlord or property management company, not the bank that processes the payment.
This includes private individuals - for example, when receiving rent from a tenant or paying rent to a private landlord.

How Detection Works

The detection uses sophisticated matching based on multiple data points including keywords, regular expressions, IBAN numbers, Creditor IDs, and more.
This ensures accurate identification across various transaction formats, even when the same business partner appears with different names or abbreviations across transactions.

Example: All of the following data points match to the same business partner:

  • Creditor ID: DE07ZZZ00000063475
  • Keywords: Allianz Lebensvers.AG or Allianz LV
  • IBAN: DE77700202700062328142
  • Regular Expression: ALLIANZ LEBEN331.143.774

These are all normalized to the tag tree item with system name Allianz Lebensversicherungs-AG and the human-readable display name Allianz Lebensversicherung.

Practical Applications

This endpoint is particularly valuable when displaying counterparty information in user interfaces. The raw counterparty name (gegenkontoInhaber) from transaction data often has limitations:

  • Not normalized: Same business partner may appear with different names or abbreviations
  • Payment service providers: May show intermediaries like PayPal instead of the actual merchant
  • Missing information: Credit card transactions and other payment methods may have empty or incomplete counterparty fields
  • Poor readability: Technical names or codes that aren't user-friendly

Business partner detection solves these issues by providing consistent, machine and human-readable names, IDs and additional information.

Database & Integration

Our database contains extensive information about business partners including their categories, industries, and sectors, which we directly leverage in other endpoints like categories and insurance-types.

For instance, if the business partner Rewe is detected, we automatically classify the transaction as Groceries in categories because it's a grocery store chain in Germany, or if the business partner CosmosDirekt is detected, we immediately classify the transaction as insurance-related in insurance-types because it's an insurance company.

We continuously improve and extend our database with more business partners and more detailed information and updates.

Missing and Unknown Business Partners

Since we are returning a business partner for each transaction, if no business partner from our database is detected, we use the tag tree item with the system name UNKNOWN.
This is common for private individuals and businesses not yet in our database, as well as transactions without sufficient information to identify a business partner.

To get a full list of business partners, use:

GET /tags/v1/tags/tag-trees/3/tag-tree-items/


Get business partners tags

GET
/customer/v2/bankzugaenge/{accessId}/{productId}/kontoumsaetze?tag=business-partners

Returns transactions with business partner information for a provided bank product.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Path Parameters

accessId*

ID of the bank access

Type
string
Required
Examples
"a61f7249-7b32-42db-add0-1d4ee565aafc""0a461cd1-116b-4039-be98-543442ac4d75"
productId*

ID of the bank product

Type
string
Required
Examples
"DE62500105174269735379""DE85500105178475866425"

Responses

Success, tags newly created or read from database

application/json
JSON
[
{
"betrag": -39.09,
"buchungsdatum": "2023-07-11 17:00:00",
"gegenkontoBic": "",
"gegenkontoIban": "",
"gegenkontoInhaber": "",
"hash": "25118333-5204-400b-b16e-91a85f6c3ef8",
"id": "e3944e8f-6830-4b73-b64a-5f311f0acf85",
"primanotaNummer": "12345",
"tags": [
{
"entity": {
"displayName": "Kontoumsatz",
"entityClass": "TRANSACTION",
"id": "e3944e8f-6830-4b73-b64a-5f311f0acf85"
},
"id": "1b38009a-4eab-4b45-a2cd-3b2a02c8c6d9",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/3/",
"rel": "tag_tree"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/3/tag-tree-items/",
"rel": "tag_tree_items"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/3/tag-tree-items/202/",
"rel": "tag_tree_item"
}
],
"tagTreeItem": {
"addressCity": "Stuttgart",
"addressCountry": "Deutschland",
"addressStreet": "Reinsburgstraße 19",
"addressZip": "70178",
"creditorId": "DE07ZZZ00000063475",
"displayName": "Allianz Lebensversicherung",
"group": "Allianz",
"systemId": 202,
"systemName": "Allianz Lebensversicherungs-AG",
"tagTree": {
"description": "Single level tag tree of business partners.",
"displayName": "Geschäftspartner",
"isClientGenerated": false,
"systemId": 3,
"systemName": "BUSINESS_PARTNERS",
"version": 1.9
},
"telephone": "0711-663-0",
"website": "http://www.allianz.de"
}
}
],
"verwendungszweck": "CRED DE07ZZZ00000063475 Beitrag Lebensvers 2023 07 SEPA BASISLASTSCHRIFT wiederholend",
"wertstellungsdatum": "2023-07-11 17:00:00"
}
]

Playground

Headers
Variables
Key
Value

Samples


Freelancer Categories

Gives detailed freelancer transactions categories in accordance with the Einnahmenüberschussrechnung (EÜR).

This endpoint provides specialized categorization for freelancers and self-employed individuals, focusing on tax-relevant categories that align with German tax reporting requirements. The categories are specifically designed to help with expense tracking and tax preparation.

The endpoint supports the same hierarchical categorization structure as the main categories endpoint but with a focus on business-related expenses and income streams relevant to freelancers.

To get a full list of freelancer categories, use:

GET /tags/v1/tags/tag-trees/4/tag-tree-items/


Get freelancer categories tags

GET
/customer/v2/bankzugaenge/{accessId}/{productId}/kontoumsaetze?tag=freelancer-categories

Returns freelancer-specific categorized transactions for a provided bank product.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Path Parameters

accessId*

ID of the bank access

Type
string
Required
Examples
"a61f7249-7b32-42db-add0-1d4ee565aafc""0a461cd1-116b-4039-be98-543442ac4d75"
productId*

ID of the bank product

Type
string
Required
Examples
"DE62500105174269735379""DE85500105178475866425"

Responses

Success, tags newly created or read from database

application/json
JSON
[
{
"betrag": -31.18,
"buchungsdatum": "2023-07-08 13:29:00",
"buchungstext": "",
"gegenkontoBic": "PBNKDEFF",
"gegenkontoIban": "DE08250100300000289304",
"gegenkontoInhaber": "Telekom Deutschland GmbH",
"gvCode": "56",
"hash": "c07f30f9-f06c-4dc6-b25b-2926a27e6dd3",
"id": "5bfcc9a3-854e-450c-a20b-1843a1d2aad2",
"primanotaNummer": "485656",
"tags": [
{
"entity": {
"displayName": "Kontoumsatz",
"entityClass": "TRANSACTION",
"id": "5bfcc9a3-854e-450c-a20b-1843a1d2aad2",
"userId": "0c168a52-3071-4f72-b79d-78422befa8e3"
},
"id": "0c69cf9a-109b-4cfa-9914-5045957325fe",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/15/",
"rel": "tag_tree"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/15/tag-tree-items/",
"rel": "tag_tree_items"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/15/tag-tree-items/41/",
"rel": "tag_tree_item"
}
],
"tagTreeItem": {
"displayName": "Aufwendungen für Telekommunikation",
"systemId": 41,
"systemName": "TELECOMMUNICATIONS",
"tagTree": {
"description": "Freelancer categories tag tree.",
"displayName": "Freelancer-Kategorien",
"isTenantGenerated": false,
"systemId": 15,
"systemName": "FREELANCER_CATEGORIES",
"version": 0.1
}
}
}
],
"verwendungszweck": "Telekom Deutschland GmbH Festnetz Vertragskonto 5574442211 End to End Ref Zahlbeleg 93112306740 Mandatsref 00001234534 CRED DE93ZZZ00000078611 SEPA BASISLASTSCHRIFT wiederholend",
"wertstellungsdatum": "2023-07-08 13:29:00"
}
]

Playground

Headers
Variables
Key
Value

Samples


Insurance Types

Identifies insurance division and product in insurance-related transactions.

We use a sophisticated classification model to identify insurance types in transaction data.
The model combines pattern matching and machine learning techniques,
which allows us to detect and accurately classify insurance-related transactions.

Similar to the categories endpoint, the classes (which we call insurance types) are organized in a two-level hierarchy.
The first level is the insurance division, such as "Life", "Liability", or "Property".
The second level is the insurance product, such as
"Occupational Disability Insurance" (a subclass of "Life") or
"Pet Owner Liability Insurance" (a subclass of "Liability").

There are a few exceptions in this division and product scheme:

  • UNRELATED is used for transactions that do not relate to insurance at all.
    Since transactions are always tagged with a two-level hierarchy, there is UNRELATED_OTHER.
  • OTHER is used for transactions that are insurance-related
    but do not fit into any of the other classes or lack sufficient information to define the division.
    Consequently, there is a subclass OTHER_OTHER and a subclass within each division, e.g., LIFE_OTHER or LIABILITY_OTHER.

The categories endpoint is strongly related to this endpoint.
It calls this endpoint first, and if the category is not UNRELATED, it uses INSURANCE as the first level and the division as the second level.

To get a full list of insurance types, use:

GET /tags/v1/tags/tag-trees/2/tag-tree-items/


Get insurance types tags

GET
/customer/v2/bankzugaenge/{accessId}/{productId}/kontoumsaetze?tag=insurance-types

Returns insurance division and product classification for a provided bank product.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Path Parameters

accessId*

ID of the bank access

Type
string
Required
Examples
"a61f7249-7b32-42db-add0-1d4ee565aafc""0a461cd1-116b-4039-be98-543442ac4d75"
productId*

ID of the bank product

Type
string
Required
Examples
"DE62500105174269735379""DE85500105178475866425"

Responses

Success, tags newly created or read from database

application/json
JSON
[
{
"betrag": -13.09,
"buchungsdatum": "2020-03-11 18:00:00",
"gegenkontoBic": "",
"gegenkontoIban": "",
"gegenkontoInhaber": "",
"hash": "f2769cb9-f39b-4bfb-8002-905dc30ad8e5",
"id": "81328b96-b872-4f04-a76a-09aeab2001cd",
"primanotaNummer": "12345",
"tags": [
{
"entity": {
"displayName": "Kontoumsatz",
"entityClass": "TRANSACTION",
"id": "81328b96-b872-4f04-a76a-09aeab2001cd"
},
"id": "7332c232-0079-4600-9e3e-bac24cb8c855",
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/2/",
"rel": "tag_tree"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/2/tag-tree-items/",
"rel": "tag_tree_items"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/2/tag-tree-items/164/",
"rel": "tag_tree_item"
}
],
"tagTreeItem": {
"displayName": "Kapitallebensversicherung",
"systemId": 164,
"systemName": "LIFE_ENDOWMENT",
"systemNameParent": "LIFE",
"tagTree": {
"description": "Two level fine grained insurance categorization tag tree.",
"displayName": "Versicherungsarten",
"isClientGenerated": false,
"systemId": 2,
"systemName": "INSURANCE_TYPES",
"version": 2.4
}
}
}
],
"verwendungszweck": "CRED DE07ZZZ00000063475 Beitrag Lebensvers 2020 01 SEPA BASISLASTSCHRIFT wiederholend",
"wertstellungsdatum": "2020-03-11 18:00:00"
}
]

Playground

Headers
Variables
Key
Value

Samples


Tags

Provides access to the foundational taxonomy system that powers classification across all AI endpoints.
The Tags system serves as the central repository for hierarchical classification vocabularies used throughout the platform.

Tag Tree & Tag Tree Item

The system is built around two fundamental concepts:

  • Tag Trees - Versioned classification hierarchies that represent specific business domains (e.g., spending categories, insurance types, business partners)
  • Tag Tree Items - Individual classification labels within each hierarchy, forming the leaves of the taxonomy tree

Data Structure

  • System Name - Unique identifier for programmatic use (e.g., LIVING_GROCERIES)
  • System ID - Numeric identifier for mapping to customer's own naming schemes
  • Display Name - Human-readable name for direct UI display (e.g., "Lebensmittel")
  • Description - Detailed scope clarification (e.g., "Payments from grocery shopping")

Some Trag Tree Items contain additional metadata such as addresses, IBANs, or phone numbers, depending on the classification domain.

Example

The endpoint categories uses the Tag Tree Items, such as the one with the system name LIVING_GROCERIES, from the Tag Tree with the system name CATEGORIES to classify transactions.

Tag Instance Architecture

All classification endpoints follow a consistent tag instance pattern:

  • Each classified transaction or entity (e.g., a user) receives tag instances linking back to specific Tag Tree Items and Tag Trees
  • Tag instances maintain traceability to source data while providing standardized classification

Instance-Specific vs. Static Data:

  • Tag Trees and Tag Tree Items contain only static, universal classification data
  • Tag Instances contain dynamic, instance-specific information such as classification confidence scores
  • Some endpoints (e.g., disposable-money) primarily return instance-specific calculations while maintaining Tag Tree (Item) consistency for standardized classification references

Cross-Endpoint Integration

Tag Trees and Tag Tree Items are designed for reuse across multiple endpoints, ensuring classification consistency, for instance:

  • categories endpoint: Uses CATEGORIES tag tree as primary classification source
  • contracts endpoint: Incorporates CATEGORIES, INSURANCE_TYPES, BUSINESS_PARTNERS to build contracts
  • credit-attributes endpoint: Leverages CATEGORIES for expense analysis, LIFE_STAGES for risk assessment, and more
  • affordability endpoint: Uses CATEGORIES to distinguish necessities from luxuries

Practical Applications

  • Browse available classes before using classification endpoints
  • Understand the structure and relationships within each taxonomy
  • Create mappings between your own classification schemes and the platform's standardized tags

Get tag trees

GET
/tags/v1/tag-trees/

Returns all available tag trees.

This endpoint can be used to get an overview of all available tag trees and a mapping of IDs and names.

Parameters

Header Parameters

x-correlation-id

ID used to track end-to-end processing of the request

Type
string
Examples
"f47ac10b-58cc-4372-a567-0e02b2c3d479""6ba7b810-9dad-41d1-80b4-00c04fd430c8""550e8400-e29b-41d4-a716-446655440000"

Responses

Success, tag trees read from database

application/json
JSON
[
{
"description": "Two level categorization tree.",
"displayName": "Kategorien",
"isClientGenerated": false,
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/1/",
"rel": "self"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/1/tag-tree-items/",
"rel": "tag_tree_items"
}
],
"systemId": 1,
"systemName": "CATEGORIES",
"version": 3.7
},
{
"description": "Two level fine grained insurance categorization tag tree.",
"displayName": "Versicherungsarten",
"isClientGenerated": false,
"relations": [
{
"href": "https://banksapi.io/tags/v1/tag-trees/2/",
"rel": "self"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/",
"rel": "tag_trees"
},
{
"href": "https://banksapi.io/tags/v1/tag-trees/2/tag-tree-items/",
"rel": "tag_tree_items"
}
],
"systemId": 2,
"systemName": "INSURANCE_TYPES",
"version": 2.4
}
]

Playground

Headers

Samples


Powered by VitePress OpenAPI