A CIBC API for your own accounts.
Connect CIBC once with a login at the bank. Read your transactions, balances, investment holdings, investment trades, and loan balances as JSON with a scoped key, or ask an AI agent over MCP. Built for one person, not a fintech.
- read-only
- 2 years of history
- from US$7/mo
$curl https://api.banksync.io/v1/banks/bnk_cibc/accounts/acc_4419/transactions?from=2026-09-01 \ -H "X-API-Key: bsk_live_…" { "success": true, "data": [ { "date": "2026-10-08", "description": "Loblaws #1029", "amount": -92.64, "category": "Groceries" }, { "date": "2026-10-07", "description": "Tim Hortons", "amount": -6.45, "category": "Dining" }, …44 more ], "meta": { "count": 46, "hasMore": false }}200 OK · 46 rows · 121 ms
CIBC and personal API access
CIBC has a tokenized data-access agreement with the aggregator MX, which lets approved apps read accounts without your password. It does not hand customers an API key for their own accounts.
You sign in at CIBC and approve access; the connection runs through Plaid, and your key reads the data back as JSON. Canada’s Consumer-Driven Banking framework is legislated but not live yet, so there is no regulated consent screen to use instead.
What you get in Canada
- Data
- Transactions, balances, investment holdings, investment trades, and loan balances. Read-only.
- History
- Up to 2 years on the first sync.
- Consent
- Does not expire. Disconnect any time.
- Framework
- Consumer-Driven Banking · Department of Finance Canada
- Provider
- Connections run through Plaid. Canada’s Consumer-Driven Banking framework is not live yet (its regulations were proposed in June 2026), so access today runs on the provider’s data-sharing agreements with each bank.
How it works
- 1
Connect your own bank
Sign up, then connect CIBC through your bank's own consent screen.
- 2
Create an API key
Workspace › Developers. Give it only the scopes it needs; revoke it any time.
banks:read - 3
Make your first call
Read transactions, balances, investment holdings, investment trades, and loan balances as JSON with one GET request and your key in the X-API-Key header.
- 4
Or ask an AI agent
Point Claude, ChatGPT or Cursor at the MCP server and ask questions about the same data.
MCP
Call it your way
$curl -s "https://api.banksync.io/v1/banks/bnk_cibc/accounts/acc_4419/transactions?from=2026-09-01" \ -H "X-API-Key: bsk_live_…" \ | jq '.data[] | {date, description, amount}'
import osimport requests r = requests.get( "https://api.banksync.io/v1/banks/bnk_cibc/accounts/acc_4419/transactions", params={"from": "2026-09-01"}, headers={"X-API-Key": os.environ["BANKSYNC_API_KEY"]},)r.raise_for_status()for row in r.json()["data"]: print(row["date"], row["description"], row["amount"])
const res = await fetch('https://api.banksync.io/v1/banks/bnk_cibc/accounts/acc_4419/transactions?from=2026-09-01', { headers: { 'X-API-Key': process.env.BANKSYNC_API_KEY },})if (!res.ok) throw new Error(`BankSync API ${res.status}`)const { data } = await res.json()console.table(data)
you ›How much did I spend eating out in September?mcpget_transactions({ bankId: "bnk_cibc", accountId: "acc_4419", from: "2026-09-01" })agent ›C$284.75 across 19 transactions; Tim Hortons was the most frequent (9 visits). — same key, same data, in Claude, ChatGPT or Cursor —
API access from $7/mo
Standard includes 5 bank connections, 10 API requests a minute and the MCP server. Every plan starts with a 14-day free trial. Prices shown in USD.
Frequently asked questions
Does CIBC offer a personal API?
Not to individuals. CIBC shares data with approved apps through a tokenized data-access agreement with MX, and does not issue customers an API key. BankSync connects CIBC through a Plaid-connected login.
What data can I read from my CIBC accounts?
Transactions, balances, investment holdings, investment trades, and loan balances, read-only, as JSON. The first sync reaches back up to 2 years of transactions, depending on how much CIBC makes available.
How long does consent last?
No scheduled expiry: the connection does not expire. CIBC may occasionally ask you to sign in again; the app asks you to reconnect when that happens. You can disconnect at any time.
Is the API read-only?
Yes. The connection your bank grants is read-only: BankSync can read account data, and it cannot move money, make payments or change anything at your bank. Your API key reads the same data, scoped to the permissions you give it.
Can I use my CIBC data with Claude or ChatGPT?
Yes. The same read-only data is available over BankSync’s MCP server: point Claude, ChatGPT or Cursor at it and ask about your CIBC transactions in plain English. It is included from the Standard plan.
What about CIBC business accounts?
Which business and commercial accounts CIBC shares varies, so we do not promise them here. Contact support with your account type before you rely on it, and we will tell you what connects.
Related reading
- Canadian open banking API →What the API returns in Canada, plans and the full endpoint list.
- CIBC on BankSync →How CIBC connects, the data it returns and where you can send it.
- Canadian bank coverage →Every Canadian bank you can connect, with the data each one returns.
- MCP server →The same data in Claude, ChatGPT, Cursor and VS Code.
Read your CIBC data tonight
Connect CIBC, create a scoped key, and read your own data as JSON.
CIBC