Giter Site home page Giter Site logo

api-doc's Introduction

マネーフォワードAPI

概要

クラウド家計簿ソフト「マネーフォワード」の開発者向けAPIのドキュメントです。現在は、クローズドAPIとして、特定のパートナー企業様へ提供をしております。

本APIは継続開発中であり、予告なく変更等が入る可能性があります。

提供機能

  • ユーザー情報の取得
  • 自動取得金融機関情報の取得
  • 口座情報の取得・編集
  • 入出金情報の取得・編集
  • 資産情報の取得
  • 取引情報の取得

認証・認可方式

OAuth2: Authorization Code Flowに基づくOpenID Connect

要求

要求のパラメーターは、それぞれ

  • パス
  • クエリー
  • ヘッダー
  • (POSTメソッド時の)本文

のうちの決められた場所に記載して下さい。本文のパラメーターはJSON形式で受け取ります。

日時、日付のパラメーターの値には ISO-8601 拡張形式を推奨します。

  • 例 (2014年04月01日00時00分01秒):

    2014-04-01T00:00:01+09:00
    
  • 例 (2014年04月01日):

    2014-04-01
    

他の 2017/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 なし
ユーザーのSSOトークンを登録する POST /api/v1/sso_tokens manage_sso
ユーザーのデモグラフィック情報を閲覧する GET /api/v1/profile profile
ユーザーの登録を削除する DELETE /api/v1/user 非公開

金融機関情報の取得

メソッド 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 manage_accounts
特定の口座連携を解除する DELETE /api/v1/accounts/:id manage_accounts
特定の口座の登録内容を書き換える PATCH または PUT /api/v1/accounts/:id manage_accounts
特定の口座のログインに必要な追加の入力項目を登録する POST /api/v1/additional_requests manage_accounts
特定の口座のログインに必要な追加の入力項目の答えを編集する PATCH または PUT /api/v1/additional_requests/:id manage_accounts
全ての口座の情報をマネーフォワードに金融機関から再取得させる POST /api/v1/accounts/acquire acquire_accounts
特定の口座の情報をマネーフォワードに金融機関から再取得させる 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

資産情報の取得

メソッド 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

取引情報の取得

メソッド URI 必要な権限(スコープ)
全ての約定の履歴を得る GET /api/v1/executions trades_inquiry または crypto_ccy_trades_inquiry

api-doc's People

Contributors

fujishirotomotaka avatar kanebako avatar ktakenaka avatar kurodashota-mf avatar makiton avatar moritakanako avatar nkuroda avatar sanemat avatar sawadatsuyoshi-mf avatar tunanosuke avatar yamashitamanato avatar yokotty avatar yui-knk avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.