Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the My Bank Statement Analysis API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fmybankstatementanalysis.com%2Fmybankstatementanalysis" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fmybankstatementanalysis.com%2Fmybankstatementanalysis" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with My Bank Statement Analysis API.
Analyze up to 10 statement PDFs or images in one synchronous POST /api/v1/analyses call and receive the finished report
Page through categorised transactions for a report with GET /api/v1/analyses/{id}/transactions, up to 500 per page, each flagged for internalTransfer and refund
Read detected recurring charges from the report's subscriptions list, with name, amount, frequency, and dayOfMonth
Spot double billing from the duplicateCharges list, which gives merchant, amount, count, dates, confidence, and reason
GET STARTED
Get income, expenses, and net totals plus the statement month, currency, and institution from GET /api/v1/analyses/{id}
Check the plan, pages remaining, and when the page allowance resets with GET /api/v1/me before uploading
Patterns agents use My Bank Statement Analysis API for, with concrete tasks.
★ A personal finance agent that reads statements through Jentic
A finance assistant can turn a user's statement PDF into answers about their money. Through Jentic it finds the analysis operation by intent, checks pagesRemaining with GET /api/v1/me, uploads the file to POST /api/v1/analyses, and answers from the returned report: totals, subscriptions, duplicate charges, and savings tips. The Business plan key is injected at call time and never handed to the agent.
Call GET /api/v1/me to confirm pagesRemaining is above zero, then POST /api/v1/analyses with the file 'october-statement.pdf' and report totals.income, totals.expenses, and every entry in subscriptions
Subscription and duplicate charge audit
Forgotten subscriptions and double billing hide in long statements. Each report lists subscriptions with name, amount, frequency, and dayOfMonth, and duplicateCharges with the merchant, amount, how many times it hit, the dates, a confidence, and a reason. An agent can turn those two lists into a cancellation checklist without reading every line.
Call GET /api/v1/analyses/{id} for the latest analysis and list each duplicateCharges entry with its merchant, amount, count, and dates, followed by every subscriptions entry sorted by amount
Transaction export for bookkeeping
Bookkeeping needs line items, not a summary. GET /api/v1/analyses/{id}/transactions pages through categorised transactions with limit up to 500 and offset, each with date, description, merchant, amount, direction of credit or debit, balanceAfter, and category, plus flags for excluded rows, internal transfers, and refunds so they can be filtered before import.
Call GET /api/v1/analyses/{id}/transactions with limit 500 and offset 0, repeat with offset 500 until no rows remain, and drop rows where internalTransfer is true
5 endpoints — the my bank statement analysis api reads bank statement files, pdfs or images, and returns a finished report of categorised transactions with insights and recurring-charge findings.
METHOD
PATH
DESCRIPTION
/api/v1/analyses
Analyze one or more statement files
/api/v1/analyses/{id}
Fetch one report
/api/v1/analyses/{id}/transactions
Page through categorised transactions
/api/v1/analyses
List analyses, newest first
/api/v1/me
Get account, plan, and remaining page allowance
/api/v1/analyses
Analyze one or more statement files
/api/v1/analyses/{id}
Fetch one report
/api/v1/analyses/{id}/transactions
Page through categorised transactions
/api/v1/analyses
List analyses, newest first
/api/v1/me
Get account, plan, and remaining page allowance
What agents get from Jentic-routed access to this vendor.
Setup
Wiring My Bank Statement Analysis by hand means creating an mbsa_ bearer key on a Business plan, building multipart uploads under 4MB, and holding a client timeout long enough for the synchronous analysis. Through Jentic you install once, import the API from the API Directory, store the key once, and your agent calls it.
Permission scoping
The API puts the analysis id in the URL path (/api/v1/analyses/{id}/...), so a rule can pin your agent to reading one report and its transactions. You choose the operations it may call, so the upload operation, which spends your page allowance, is not included unless you add it.
Credential isolation
Your mbsa_ key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'analyze a bank statement' or 'find subscriptions in my statement', and Jentic returns the matching operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using My Bank Statement Analysis API through Jentic.
Is there a My Bank Statement Analysis MCP server?
You don't need an MCP server to give your agent My Bank Statement Analysis. Jentic connects it directly from the API Directory: import it, store your mbsa_ key once, and your agent calls it. Operations are discovered on demand, so no extra tool definitions sit in the agent's context.
What authentication does the My Bank Statement Analysis API use?
Per its OpenAPI spec, the API uses an API key created in account settings, prefixed mbsa_, sent as a bearer token in the Authorization header. The key's plan must include API access, which the spec says requires a Business plan; otherwise calls return 403. Through Jentic, the key is stored encrypted by your own Jentic One instance and injected at call time.
Can I limit what my agent is allowed to do with the My Bank Statement Analysis API?
Yes. For example, write a rule that allows only GET /api/v1/analyses/{id} and GET /api/v1/analyses/{id}/transactions for one analysis id. Your agent can then read that one report and its transactions, but it cannot upload new statements that use up your page allowance or browse your other analyses, and every call it makes is logged.
What are the rate limits for the My Bank Statement Analysis API?
The OpenAPI spec states that more than 200 analyses in one day returns 429, and that an exhausted plan page allowance returns 402. GET /api/v1/me reports pagesUsed, pageLimit, pagesRemaining, periodResetsAt, and analysesPerDay for your account.
How do I analyze a bank statement through Jentic?
Search Jentic for 'analyze a bank statement', load the createAnalysis operation, and call POST /api/v1/analyses as multipart/form-data with one file part per PDF or image. The call runs synchronously and returns the finished report, so allow up to five minutes of client timeout. To run it on your own infrastructure, install Jentic One from its GitHub repo.
Why would a statement fail to analyze?
The spec lists 422 for statements that cannot be read because they are password-protected, scanned beyond recovery, or mixed-currency, 413 when the request body is over the limit, and 415 for unsupported file types. Keep each request under 4MB with at most 10 files.
For Agents
Upload bank statement PDFs or images and get back categorised transactions, income and expense totals, detected subscriptions, duplicate charges, savings tips, and an action plan.
Use for: I need to categorise every transaction in last month's bank statement, Find all subscriptions I am paying for in these statements, Check whether I was charged twice by the same merchant, Get my total income and expenses for March from this PDF
Not supported: Does not connect to bank accounts, move money, or file taxes. Use for analyzing uploaded bank statement files into categorised transactions and spending findings only.
The My Bank Statement Analysis API reads bank statement files, PDFs or images, and returns a finished report of categorised transactions with insights and recurring-charge findings. One synchronous call takes up to 10 files in a request under 4MB and returns the report directly, including the detected institution, statement month and currency, income, expense, and net totals, and lists of subscriptions, duplicate charges, savings tips, and an action plan. Each transaction carries its date, description, merchant and merchantDomain, amount, direction, category, and flags for internal transfers and refunds, paged up to 500 at a time. API access requires a Business plan key, and usage is metered against a page allowance that the account endpoint reports.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>