マネーフォワード API
概要
クラウド家計簿ソフト「マネーフォワード」の開発者向け API のドキュメントです。現在は、クローズド API として、特定のパートナー企業様へ提供をしております。
本 API は継続開発中であり、予告なく変更等が入る可能性があります。
提供機能
- ユーザー情報の取得
- 自動取得金融機関情報の取得
- 口座情報の取得・編集
- 入出金情報の取得・編集
- 資産情報の取得
- 取引情報の取得
認証・認可方式
OAuth2: Authorization Code Flow に基づく
要求
要求のパラメーターは、それぞれ
- パス
- クエリー
- ヘッダー
- (POST メソッド時の)本文
のうちの決められた場所に記載して下さい。本文のパラメーターは JSON 形式で受け取ります。
日付に関するパラメーターの値は ISO 8601 拡張形式に即し、YYYY-MM-DD
で指定して下さい。
-
例 (2014 年 04 月 01 日):
2014-04-01
名前の末尾が []
になっているパラメーターは、1 回の要求で繰り返し使って複数の値を指定することができます。
-
例:
https://moneyforward.com/api/v1/accounts?service_category_ids[]=1&service_category_ids[]=2&page=1
応答
成功時には200
を、エラー時には 4xx
または 5xx
(x
は数字) をステータスコードとして返します。
認証・認可
API の使用には、それに先立って、ユーザーの認可を得、さらにアクセストークンを得るという手順が必要です。発行されるアクセストークンは、API へのアクセスの度に必要です。アクセストークンは、発行から一定時間が過ぎると使えなくなります。発行されたアクセストークンの有効期限が切れたときは、再びユーザーの認可を受けるという手順を踏まずに、再びアクセストークンを得ることができます。
メソッド | URI | |
---|---|---|
ユーザーの認可を得る | GET または POST | /oauth/authorize |
アクセストークンを得る | POST | /oauth/v2/token |
アクセストークンを再び得る | POST | /oauth/v2/token |
マネーフォワード API を使って出来ること
ユーザー情報の取得
メソッド | URI | 必要な権限(スコープ) | |
---|---|---|---|
ユーザーの認証情報や電子メールを得る | GET または POST | /oauth/userinfo | openid または openid email |
ユーザーの登録状況を得る | GET | /api/v1/user | なし |
ユーザーのデモグラフィック情報を閲覧する | GET | /api/v1/profile | profile |
金融機関情報の取得
メソッド | URI | 必要な権限(スコープ) | |
---|---|---|---|
金融機関の全ての分類を得る | GET | /api/v1/service_categories | なし |
マネーフォワードで口座を登録可能な全ての金融機関を得る | GET | /api/v1/services | なし |
マネーフォワードで登録可能な特定の金融機関のログインに必要な入力項目を得る | GET | /api/v1/services/:id | なし |
マネーフォワードが金融機関から情報を取得しようとする際に生じうる全てのエラーの種類を得る | GET | /api/v1/aggregation_errors | なし |
口座情報の取得・編集
メソッド | URI | 必要な権限(スコープ) | |
---|---|---|---|
特定の口座の情報をマネーフォワードに金融機関から再取得させる | POST | /api/v1/accounts/:id/acquire | acquire_accounts |
全ての口座の取得状況や資産額合計を得る | GET | /api/v1/accounts | accounts または manual_accounts |
特定の口座の取得状況や資産額合計、ログインに必要な入力項目を得る | GET | /api/v1/accounts/:id | accounts |
入出金情報の取得・編集
メソッド | URI | 必要な権限(スコープ) | |
---|---|---|---|
入出金の全ての大分類(及びその中のユーザー作成の中分類)を得る | GET | /api/v1/transactions/categories | transactions |
入出金項目を登録する | POST | /api/v1/transactions | manage_transactions |
特定の入出金項目の情報を書き換える | PATCH または PUT | /api/v1/transactions/:id | manage_transactions |
全ての入出金記録を得る | GET | /api/v1/transactions | transactions |
要求の日を含む期間の収支を、日曜始まりの週または月ごとに得る | GET | /api/v1/derived/transaction_histories | transactions |
日曜始まりの週または月の収支を、資産の分類ごとに得る | GET | /api/v1/derived/transaction_summaries | transactions |
カード引き落とし明細一覧を取得する | GET | /api/v1/card_future_payments | transactions |
資産情報の取得
メソッド | URI | 必要な権限(スコープ) | |
---|---|---|---|
資産の全ての大分類(及びその中の中分類)を得る | GET | /api/v1/asset_classes | なし |
資産の全ての中分類を得る | GET | /api/v1/asset_subclasses | なし |
全ての資産を得る | GET | /api/v1/user_assets | assets |
特定の資産を得る | GET | /api/v1/user_assets/:id | assets |
全ての資産の履歴を得る | GET | /api/v1/user_asset_histories | assets |
全ての大分類ごとの資産の合計を得る | GET | /api/v1/user_asset_classes | assets |
全ての大分類ごとの資産の合計の履歴を得る | GET | /api/v1/user_asset_class_histories | assets |