$30 off During Our Annual Pro Sale. View Details »

freeeAPI × Postman APIコラボレーションで スモールビジネスを世界の主役に! / FreeeAPI x Postman API collaboration to make small business the world's leading actor!

freee
November 10, 2023

freeeAPI × Postman APIコラボレーションで スモールビジネスを世界の主役に! / FreeeAPI x Postman API collaboration to make small business the world's leading actor!

freee

November 10, 2023
Tweet

More Decks by freee

Other Decks in Technology

Transcript

  1.  
    freeeAPI × Postman APIコラボレーションで

    スモールビジネスを世界の主役に!

    2023/11/08

    View Slide

  2.  
    2
    ● 職歴
    ○ 2018/05 ~ 株式会社U-NEXT
    ○ 2023/01 ~ freee株式会社
    ● 現在のポジション
    ○ public api team engineer
    ● 趣味
    ○ バイク
    ○ 猫
    ○ お⾵呂‧サウナ
    村上 紗彩 / prpr
    engineer
    Saaya Murakami

    View Slide

  3. 3
    ⽬次
    01 会社概要
    02 オープンプラットフォーム構想とfreee Public API
    03 freee Public API × Postman Team Collaboration
    04 freee Public API × Postman User Collaboration
    05 まとめ

    View Slide

  4. 4
    ⽬次
    01 会社概要
    02 オープンプラットフォーム構想とfreee Public API
    03 freee Public API × Postman Team Collaboration
    04 freee Public API × Postman User Collaboration
    05 まとめ

    View Slide

  5. 5
    Company
    Profile
    会社情報
    会社名
    freee株式会社(フリー株式会社)
    設立年月日
    2012年7月9日
    代表取締役
    佐々木 大輔
    上場市場
    東京証券取引所 マザーズ市場
    資本金
    161億603万円(資本準備金など含む)
    従業員数
    1,299人(※2023年6月末時点、連結会社の総数)
    事業内容
    クラウド型バックオフィスサービスの開発・販売

    View Slide

  6.  
    Mission
    スモールビジネスを、
    世界の主役に。
    freeeは「スモールビジネスを、世界の主役に。」 をミッションに掲げ、
    「だれもが自由に経営できる統合型経営プラットフォーム」
    の構築を目指してサービスの開発及び提供をしております。
    大胆に、スピード感をもってアイデアを具現化することができる
    スモールビジネスは、様々なイノベーションを生むと同時に、
    大企業を刺激して世の中全体に新たなムーブメントを起こすことが
    できる存在だと考えております。

    View Slide

  7. 7
    スモールビジネス向けに統合型クラウド(1)ERPを提供
    統合型クラウド会計ソフト 統合型クラウド人事労務ソフト
    請求書 | 経費精算 | 決算書 | 予実管理
    ワークフロー | 内部統制
    2013年3月~
    日本のクラウド会計ソフト市場
    シェアNo.1 (2)
    勤怠管理 | 入退社管理 | 給与計算 | 年末調整
    マイナンバー管理
    2014年10月~
    スモールビジネスの
    人事管理市場において
    売上金額シェアNo.1(3)
    その他サービス
    会社設立 開業
    税務申告 受発注 クレジットカード
    工数管理
    電子契約
    注:
    1. クラウドサービス:ソフトウェアやハードウェアを所有することなく、ユーザーがインターネットを経由して ITシステムにアクセスを行えるサービス
    2. リードプラス「キーワードからひも解く業界分析シリーズ:クラウド会計ソフト編」( 2022年8月)
    3. 「freee人事労務」は ITRが今年調査発行した「 ITR MARKET VIEW:人事・給与・就業管理市場 2022」の人事管理市場において、従業員 100人未満および従業員 100~300人未満の企業で売上金額シェア No.1(2020年度)を獲得しています。
    勤怠管理
    (中堅企業向け)
    経費精算
    販売管理
    福利厚生

    View Slide

  8. 8

    ● 様々な業種業態のスモールビジネスをバックオフィス面からサポート

    ● 導入事例:https://www.freee.co.jp/cases/
    業種や業態を問わず利⽤可能なプロダクト

    View Slide

  9. 9
    ⽬次
    01 会社概要
    02 オープンプラットフォーム構想とfreee Public API
    03 freee Public API × Postman Team Collaboration
    04 freee Public API × Postman User Collaboration
    05 まとめ

    View Slide

  10. 10
    スモールビジネス向けのERPへ

    View Slide

  11. 11
    freeeはオープンプラットフォーム構想を志向
    freeeはあらゆる領域のAPIを公開。様々なシステムが繋がるエコシステムを構築

    View Slide

  12. 12
    会計分野では30超のAPIで広範なシステム構築が可能
    ・一部この表で表現できないエンドポイント
    について省略


    ・最新情報はAPIリファレンスにて随時更新
    中

    https://developer.freee.co.jp/reference/ac
    counting/reference

    View Slide

  13. 13
    パブリックAPIによる拡張性/freeeアプリストア
    アプリストア
    掲載数(1)
    161件
    注1:2023年3月末時点
    購買・支払(*2)

    経営分析・可視化

    freee機能拡張

    請求書・証憑

    業務システム

    POS・EC(*2)

    人事マスタ・勤怠

    決済サービス(*2)

    リピート取引/外貨
    決算サポート/借⼊⾦

    View Slide

  14. 14
    freeeのAPIを活⽤したデータ連携(例)
    ● 公開済のAPIエンドポイントを利用し、様々な業務連携が可能

    他社サービス
    他社サービス
    ● 会計データの登録(受発注、請求、取引関連情報など)

    ● 勤怠データの登録(打刻、勤怠時間、有給取得など)

    ● 会計データの同期(入出金データ、B/S、P/L、勘定科目、取引先など)

    ● 人事マスタデータの同期(従業員情報、給与情報など)


    View Slide

  15. 15
    ⽬次
    01 会社概要
    02 オープンプラットフォーム構想とfreee Public API
    03 freee Public API × Postman Team Collaboration
    04 freee Public API × Postman User Collaboration
    05 まとめ

    View Slide

  16.  
    開発チームでPOSTMANを利⽤しています

    View Slide

  17.  
    freee Public APIを叩いてみよう!
    まっさらなworkspace

    View Slide

  18.  
    freee Public APIを叩いてみよう!
    まずはCollectionをimport

    View Slide

  19.  
    freee Public APIを叩いてみよう!
    freeeは公開レポジトリにAPIリファレンスをjsonで公開していますので、それを取りに⾏きます。

    View Slide

  20.  
    freee Public APIを叩いてみよう!
    import

    View Slide

  21.  
    freee Public APIを叩いてみよう!
    baseUrlはCollection変数に本番の値がdefaultで設定されています。

    View Slide

  22.  
    freee Public APIを叩いてみよう!
    baseUrlはCollection変数に本番の値がdefaultで設定されています。

    View Slide

  23.  
    freee Public APIを叩いてみよう!
    accessTokenも必要です

    View Slide

  24.  
    freee Public APIを叩いてみよう!
    Bearer TokenにAccessTokenを設定(取得⽅法は https://developer.freee.co.jp/startguide/getting-access-token を参照)

    View Slide

  25.  
    freee Public APIを叩いてみよう!
    叩けた!

    View Slide

  26.  
    とりあえず叩けたけど、設定⾯倒だし困ったこともある
    ● 他のAPIを叩くときも毎回accessTokenを設定しなければいけない
    ● 環境ごとにbaseUrlを書き換えなければいけない
    ● プロダクトを変える(⼈事労務APIなど)ごとにbaseUrlを書き換
    えなければならない
    ● accessTokenが6時間で期限切れになってしまい、何度も再取得し
    にいかなければいけない
    開発時のストレス

    View Slide

  27.  
    Team Collaborationで設定作業を最⼩限に
    ● originalのCollectionや環境変数テンプレートを⽤意し、メンバー
    はそれをforkすることですぐにAPIの利⽤を始められる
    ● 環境やプロダクトごとの差分はoriginalの設定に含めて、fork先で
    設定をしなくてよくなる
    ● accessTokenのリフレッシュ機構をPre-request Sctipt で⽤意し、
    期限切れで都度取得しにいかなくてよくする

    View Slide

  28.  
    Team Collaborationで設定作業を最⼩限に
    teamのworkspaceにCollectionを⽤意。チームでよく利⽤される会計APIと⼈事労務APIを準備しています。

    View Slide

  29.  
    Team Collaborationで設定作業を最⼩限に
    まずはCollectionの設定をします。
    accessTokenはすべてのAPIで使うのでCollectionに設定し、値を環境変数から取得します。

    View Slide

  30.  
    Team Collaborationで設定作業を最⼩限に
    baseUrlも環境によって変わるので、defaultのCollection変数の値に環境変数をとってくるように設定します。
    rediredirectUriは後で紹介するaccessTokenのリフレッシュで利⽤します。

    View Slide

  31.  
    Team Collaborationで設定作業を最⼩限に
    その他環境依存のものはEnvironmentにテンプレートとして⽤意。clientId, clientSecret, authorizationCodeは個⼈
    の環境に依存するのでfork先で設定をしてもらいます。

    View Slide

  32.  
    Team Collaborationで設定作業を最⼩限に
    accessTokenをリフレッシュするPre-request Scriptを⽤意。ココまでに設定したCollection変数と環境変数を利⽤
    して、accessTokenの取得とリフレッシュが⾃動で⾏われるようになります。
    実装は https://developer.freee.co.jp/startguide/getting-access-token を参考に。

    View Slide

  33.  
    Team Collaborationで設定作業を最⼩限に
    Collectionを個⼈のworkspaceにfork。
    originalでの設定を引き継げるので⾃分で設定することなくaccessTokenのリフレッシュ機能を使えます。

    View Slide

  34.  
    Team Collaborationで設定作業を最⼩限に
    環境変数を個⼈のworkspaceにforkし、⾃分の環境の値を⼊れる。
    これらの値は使⽤するアプリケーションごとに異なるので、アプリごとに環境変数を作成します。(利⽤できる機能
    が事業所の契約プランによって違うため、それぞれの契約プランの事業所でアプリケーションを作成しています。)

    View Slide

  35.  
    Team Collaborationで設定作業を最⼩限に
    すぐにAPIを叩くことができた!

    View Slide

  36.  
    accessToken取得‧リフレッシュの⾃動化
    APIをたたくと、Pre-request Scriptが実⾏されて環境変数がこのように更新されます。
    accessTokenを取得しにいっている

    View Slide

  37.  
    accessToken取得‧リフレッシュの⾃動化
    accessTokenが期限切れになった場合はリフレッシュを⾏います
    accessTokenを再取得
    ここで期限が切れた

    View Slide

  38.  
    forkするメンバー視点
    ● ⼿順は①Collectionのfork②Environmentのfork③Environment
    の⽳埋め だけ
    ● 環境やプロダクトごとに異なる部分はすでにテンプレートで⽤意
    されてて気にする必要がない
    ● アクセストークンの期限切れからの開放!
    開発に集中できる!

    View Slide

  39.  
    今後の展望
    ● テストデータの準備が必要なAPIについて、Pre-request Scriptで
    先に必要なAPIを叩いてデータを作成し、⼀発で対象のAPIを叩け
    るようにする
    ○ originalの更新はfork先でpullできるので随時更新できる!
    ● gitと同期をとって、リファレンスの更新からcollectionの更新を
    できるようにする
    ○ https://github.com/freee/freee-api-schema

    View Slide

  40. 40
    ⽬次
    01 会社概要
    02 オープンプラットフォーム構想とfreee Public API
    03 freee Public API × Postman Team Collaboration
    04 freee Public API × Postman User Collaboration
    05 まとめ

    View Slide

  41.  
    ユーザーさんにもっと気軽に試してほしい
    現時点ではリファレンスページでAPIcallができる

    View Slide

  42.  
    ユーザーさんにもっと気軽に試してほしい
    POSTMANでの利⽤は、リファレンスからのimportしかない

    View Slide

  43.  
    ユーザーさんにもっと気軽に試してほしい
    Public API Network への公開を準備中

    View Slide

  44.  
    ユーザーさんにもっと気軽に試してほしい
    PayPalさんの例:すぐにforkしてはじめられるRun in Postman Buttonと、わかりやすいOverview

    View Slide

  45.  
    ユーザーさんにもっと気軽に試してほしい
    PayPalさんの例:認証の⾃動化や必要な変数をcollectionに定義済み

    View Slide

  46.  
    なぜPublic API Networkに公開するのか
    ● 認証⾃動化など、リファレンスページ上で実現できない便利な機
    能をユーザーさんに提供し、よりよい開発体験を届ける。
    ● freee Public APIの認知度を⾼め、もっと利⽤してもらう。
    Team Collaborationで作ったPre-request Scriptを
    もとに、ユーザーさんもPOSTMANを使えば
    accessTokenの⾃動リフレッシュ機能を使えるよう
    にできる

    View Slide

  47.  
    悩んでいるところ①
    Collectionの更新をどのようにおこなっていくか。
    ● リファレンスの内容を⾒てCollectionを⼿動で修正する
    ○ 最新のリファレンスを取り込んで増えたメソッドを移植するよ
    うな形が⼀番安全だが、⾯倒かつ100%ヒューマンエラーを防げ
    ない
    ● gitと同期をとって、リファレンスの更新からCollectionの更新を
    できるようにする
    ○ https://github.com/freee/freee-api-schema
    ○ 上位プランへの加⼊が必要なので検討中!

    View Slide

  48.  
    悩んでいるところ②
    コメント機能をどう運⽤していくか
    ● Collection利⽤者とコミュニケーションをとっていくことで
    Collectionの改善につながる素敵なCollaboration機能なのだが…
    ● 様々な問い合わせがここに来てし
    まうことを懸念。APIに関する問い
    合わせ窓⼝はすでに存在しており、
    そちらに集約したい。
    ● Collectionの設定でコメント不可
    があったらいいな。

    View Slide

  49. 49
    ⽬次
    01 会社概要
    02 オープンプラットフォーム構想とfreee Public API
    03 freee Public API × Postman Team Collaboration
    04 freee Public API × Postman User Collaboration
    05 まとめ

    View Slide

  50.  
    まとめ
    ● Collaborationを活⽤してfreee Public APIをもっと盛り上げる!
    ○ 社内のAPI開発効率UP!
    ○ ユーザーさんにより良い開発体験を届ける!
    ○ 連携アプリが増えてfreee利⽤者がもっと便利に!

    View Slide

  51. スモールビジネスを、世界の主役に。

    View Slide