Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
freee SDKs GA 祭り / freee-sdk-ga
Search
miyake
November 08, 2019
Technology
0
630
freee SDKs GA 祭り / freee-sdk-ga
freee Open Guild #06 freee SDK 特集 の セッション資料です
miyake
November 08, 2019
Tweet
Share
More Decks by miyake
See All by miyake
Azure Serverless × AI Agent × MCP アーキテクチャ最前線 / Azure Serverless Agent Architecture
miyake
15
4.1k
Cosmos DB で持続可能な RAG を実現しよう!~ AOAI Dev Day ふりかえりを添えて / Sustainable RAG with Cosmos DB with recap AOAI Dev Day
miyake
1
350
Mirroring Azure Cosmos DB in Microsoft Fabric
miyake
2
250
LLM 時代におさえておきたい Azure Serverless ファミリーまとめ / serverlessdaystokyo2023-llm-aoai
miyake
9
2.8k
Nuxt Studio を使ってみた / nuxt-studio-intro
miyake
1
1.1k
Microsoft Build 2023 で発表された Cosmos DB の注目アップデート / Microsoft Build 2023 Cosmos DB update
miyake
1
880
祝 🎉 両方とも正式リリース! GitHub Codespaces と Nuxt3 で次世代開発体験 / codespaces-nuxt3
miyake
0
1.5k
Static Site Generator でサイト構築 / building sites with static site generator
miyake
1
400
Design and implementation of Cosmos DB Change Feed-centric architecture
miyake
0
1.1k
Other Decks in Technology
See All in Technology
[AWS 秋のオブザーバビリティ祭り 2025 〜最新アップデートと生成 AI × オブザーバビリティ〜] Amazon Bedrock AgentCore で実現!お手軽 AI エージェントオブザーバビリティ
0nihajim
1
220
AIエージェントによる業務効率化への飽くなき挑戦-AWS上の実開発事例から学んだ効果、現実そしてギャップ-
nasuvitz
5
1.6k
仕様駆動開発を実現する上流工程におけるAIエージェント活用
sergicalsix
10
5.4k
累計5000万DLサービスの裏側 – LINEマンガのKotlinで挑む大規模 Server-side ETLの最適化
ldf_tech
0
160
DMMの検索システムをSolrからElasticCloudに移行した話
hmaa_ryo
0
360
アノテーション作業書作成のGood Practice
cierpa0905
PRO
1
390
新米エンジニアをTech Leadに任命する ー 成長を支える挑戦的な人と組織のマネジメント
naopr
1
350
[Journal club] Thinking in Space: How Multimodal Large Language Models See, Remember, and Recall Spaces
keio_smilab
PRO
0
110
AIを使ってテストを楽にする
kworkdev
PRO
0
410
激動の2025年、Modern Data Stackの最新技術動向
sagara
0
340
DSPy入門
tomehirata
6
880
Amazon Athena で JSON・Parquet・Iceberg のデータを検索し、性能を比較してみた
shigeruoda
1
300
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
76
5.1k
Code Reviewing Like a Champion
maltzj
526
40k
Unsuck your backbone
ammeep
671
58k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
640
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Transcript
freee SDKs GA 祭り freee Open Guild #6「freee SDK特集」 1
SDK 開発メンバー 2
⽇本初の会計システム開発⽤SDK API エコノミーの推進、オープンプラットフォーム構想の⼀環として発表 公式発表資料 3
SDK リリース状況 GA = General Availability (正式リリース) 2019年11⽉8⽇時点 上記以外に、 JavaScript
SDK が Beta 版として存在 4
SDK の位置づけ 公開されている freee API を使いやすくする 開発環境から直接 freee API を操作できる
5
SDK 利⽤のメリットは︖ いつもの⾔語、いつもの開発環境から freee API を操作できる 社内Webアプリの機能から freee API を簡単に呼ぶことができる
freee の アプリストア にアプリケーションを公開しやすくする 6
SDK を利⽤すると SDK を利⽤しない場合 REST API の呼び出しを実⾏するコードを書く必要がある(⽅法は⾔語ごとに異なる) curl -X GET
"https://api.freee.co.jp/api/1/reports/trial_pl?company_id=3316&fiscal_year=2019" -H "accept: application/json" -H "Authorization: Bearer abcdefghijklmnopqrstuvwxyz01234567890xxxxxxxxxxxxxxxxxxxxx" SDK を利⽤(C#の場合) SDK で準備されているメソッドを実⾏するだけ(例: 試算表取得 GetTrialPlAsync ) var trialPl = await accountingClient.TrialBalance.GetTrialPlAsync(companyId, 2019); 7
SDK の開発で⼼がけたこと freee API スキーマに準拠 https://github.com/freee/freee-api-schema 各⾔語の流儀にしたがう SDK は公式パッケージマネージャから配布する $
dotnet add package Freee.Accounting.Sdk --version 1.0.0 <dependency> <groupId>jp.co.freee</groupId> <artifactId>freee-accounting-sdk</artifactId> <version>1.0.0</version> </dependency> 8
SDK 開発の流れ API からジェネレータで SDK を⽣成する SDK のソースコードは GitHub に公開
⽣成した SDK から⾃動でパッケージを公開 9
会計freee SDKs 10
会計freee SDK の構成(⾔語共通) GitHub で OSS として公開 ソースコード 各種サンプル README
サンプルの実⾏⽅法 導⼊⽅法、など Issueテンプレート コントリビューションガイド CI/CD コンフィグレーション 11
会計freee C# SDK 12
会計freee C# SDK freee/freee-accounting-sdk-csharp 13
SDKの⽣成(C#) C# のコードの⽣成に向いていた AutoRest を採⽤ 現⾏: 利⽤できる OpenAPI のバージョンは 2.x
まで 将来: OpenAPI 3.x 対応について検討中 14
パッケージ⽣成・公開(C#) C#のパッケージマネージャである NuGet で公開 Freee.Accounting.Sdk Freee.OAuth.AspNetCore Azure Pipelines を使って⾃動リリース︕ GitHubでリリースタグが設定されたら、ビルドし
NuGet へ登録 15
使い⽅(C#) サンプルコード コンソールアプリ x 4 ウェブアプリ ASP.NET Core MVC をベースにした実装⽅法を
README で解説 詳しくはGitHubリポジトリへ︕ 16
使い⽅(C#)コンソールサンプル 取得したアクセストークン を利⽤して実⾏ 17
使い⽅(C#)ウェブアプリサンプル ウェブアプリ向けには OAuth2 認証処理のライブラリも作成済み︕ 18
デモ(C#) by C#開発担当 @shibayan 19
会計freee Java SDK 20
会計freee Java SDK freee/freee-accounting-sdk-java 21
SDKの⽣成(Java) C# 版と同様に AutoRest を採⽤ 現⾏: OpenAPI 2.x から⽣成 将来:
C# 版と同様、いずれ OpenAPI 3.x 対応したい 22
パッケージ⽣成・公開(Java) Java のパッケージリポジトリである Maven セントラルリポジトリ で公開 jp.co.freee » freee-accounting-sdk Azure
Pipelines を使って⾃動ビルド、デプロイ GitHubでリリースタグが設定されたら、ビルドし Sonatype Nexus Repository Manager のステージングへデプロイ Sonatype で確認後、リリース 23
使い⽅(Java) サンプルコード コンソールアプリ ウェブアプリ Spring Boot をベースにした実装⽅法を README で解説 詳しくはGitHubリポジトリへ︕
24
使い⽅(Java)コンソールサンプル 取得したアクセストークン を利⽤して実⾏ 25
使い⽅(Java)ウェブアプリサンプル Spring Boot で、 OAuth2 認証および SDK による情報取得を実装 26
デモ(Java) by Java開発担当 @statemachine 27
会計freee PHP SDK Preview 28
会計freee PHP SDK freee/freee-accounting-sdk-php 29
SDKの⽣成(PHP) OpenAPI 3.x から⽣成したかったため、 OpenAPI Generator を採⽤ Swagger Codegen と⽐較の末、
freee API スキーマと相性の良いほうを採択 30
パッケージ公開(PHP) PHPのパッケージマネージャである Composer (Packagist) で公開 freee/freee-accounting-sdk (preview) GitHub でリリースタグを打つだけでリリース完了 初回に
GitHub hook に Packagist を登録するだけ 31
使い⽅(PHP) サンプルコード コンソールアプリ ウェブアプリ Laravel をベースにした実装⽅法を README で解説 詳しくはGitHubリポジトリへ︕ 32
使い⽅(PHP)コンソールサンプル 取得したアクセストークン を利⽤して、Laravel のコンソールアプリとして実⾏ 33
使い⽅(Java)ウェブアプリサンプル Laravel で、Socialite を利⽤した OAuth2 認証、および SDK による情報取得を実装 34
デモ(PHP) by 開発担当 @dz_ 35
ロードマップ 36
ロードマップ OpenAPI 3.x 対応(C#, Java) PHP SDK: 近⽇ GA 予定
勉強会、ハンズオンなどを通じて導⼊⽀援 37
ご清聴ありがとうございました︕ Let's API Economy! 38