API AI Budget для розробників
AI Budget має публічне REST API з авторизацією OAuth 2.0 – «Підключити AI Budget». За згодою користувача ваш застосунок може читати й записувати його витрати, завантажувати чеки та категорії. Користувач сам обирає, чим ділитися, і може будь-коли відкликати доступ.
Документація APIЗареєструвати застосунокЯк ми це зробили
Що API вміє вже зараз
- Читати, створювати, змінювати й видаляти витрати (
/public/v1/expenses). - Синхронізуватися через стрічку змін
/public/v1/expenses/changes: ви періодично опитуєте її й отримуєте нові, змінені та видалені витрати – видалення надходять записамиdelete(tombstone). - Завантажувати фото чеків, прикріплених до витрат.
- Читати категорії витрат рахунку.
- Працювати з кількома рахунками в одному підключенні: користувач позначає рахунки, якими ділиться (особистий, бізнес, сімейний…), а кожен запит вказує рахунок у заголовку
X-Account-Id.GET /public/v1/accountsповертає підключені рахунки з їхнім типом. - Читати, додавати, змінювати й видаляти доходи (
/public/v1/incomes) — з власною стрічкою змін; доходи, створені переказом між рахунками, доступні лише для читання. - Читати бюджети з прогресом поточного періоду, а також створювати, змінювати й видаляти їх (
/public/v1/budgets). - Читати підсумки для аналітики (
/public/v1/analytics/summary,by-category,monthly), перераховані у валюту відображення користувача. - Права доступу (scopes):
expenses:read,expenses:write,receipts:read,categories:read,incomes:read,incomes:write,budgets:read,budgets:write,analytics:read.
Поки що API охоплює витрати, чеки, категорії, доходи, бюджети та підсумки для аналітики. Цілі й інші ресурси можуть з’явитися пізніше.
Безкоштовно й без перевірки
Доступ до API безкоштовний. Будь-який розробник сам реєструє застосунок в AI Budget (Налаштування → Розробникам) – без ручної перевірки й очікування. Ліміти запитів рахуються окремо для кожного підключення та для кожного застосунку.
Приватність користувача
Користувач сам вирішує, якими рахунками ділитися, і будь-коли може відключити застосунок у Налаштування → Підключені застосунки (як це працює). Рахунки з наскрізним шифруванням залишаються захищеними: рахунок із шифруванням тексту підключається лише для читання, а повністю зашифрований рахунок підключити не можна.
Старт за 3 кроки
- Зареєструйте застосунок у Налаштування → Розробникам: вкажіть назву й адресу перенаправлення (redirect URI) – ви отримаєте
client_idіclient_secret. - Надішліть користувача на адресу авторизації
https://app.ai-budget.pl/authorizeз PKCE. Користувач входить, позначає рахунки й підтверджує права. - Обміняйте код на токен у
POST /oauth/tokenі викликайтеhttps://api.ai-budget.pl/public/v1із заголовкомAuthorization: Bearer ….
# 1. Send the user to the consent page (PKCE S256)
https://app.ai-budget.pl/authorize?response_type=code&client_id=aba_ci_...
&redirect_uri=https%3A%2F%2Fexample.com%2Fcallback
&scope=expenses%3Aread+categories%3Aread&state=...
&code_challenge=...&code_challenge_method=S256
# 2. Exchange the code for tokens
curl -X POST https://api.ai-budget.pl/oauth/token \
-u "$CLIENT_ID:$CLIENT_SECRET" \
-d grant_type=authorization_code -d code="$CODE" \
-d redirect_uri=https://example.com/callback -d code_verifier="$CODE_VERIFIER"
# 3. Call the API for one of the connected accounts
curl https://api.ai-budget.pl/public/v1/accounts -H "Authorization: Bearer $ACCESS_TOKEN"
curl https://api.ai-budget.pl/public/v1/expenses -H "Authorization: Bearer $ACCESS_TOKEN" \
-H "X-Account-Id: $ACCOUNT_ID"Перша інтеграція: eKsięgowy AI
eKsięgowy AI підключає через API бізнес-рахунок і особистий рахунок користувача та суворо тримає їх окремо.
Документація
Опис усіх ендпоінтів (Swagger) і покрокова інструкція: