Location via proxy:
[ UP ]
[Report a bug]
[Manage cookies]
No cookies
No scripts
No ads
No referrer
Show this form
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
2024年のkintone API振り返りと2025年 / kintone API look ...
Search
tasshi
January 25, 2025
Programming
0
150
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
devkin meetup! Vol.4 【リアル新年会】in 大阪 のLT資料です。
イベント情報はこちら↓
https://devkin.connpass.com/event/339925/
tasshi
January 25, 2025
Tweet
Share
More Decks by tasshi
See All by tasshi
Streams APIとTCPフロー制御 / Web Streams API and TCP flow control
tasshi
2
430
GitHub Projectsを自動化するGitHub CLIテクニック / Automate GitHub Projects with GitHub CLI
tasshi
0
500
SDK開発チームのプロダクトオーナーが考えていること / Product management of SDK
tasshi
1
1.2k
Node.js製CLIツールのE2Eテストに取り組んでいます / Working on E2E testing of Node.js CLI tools
tasshi
0
1.2k
モダンな開発環境を用いた カンタン/安全なカスタマイズ開発 / kintone devCamp Boost! 2023
tasshi
0
750
Node Streamでメモリ性能改善、そしてWeb Streams APIへ / Improving memory performance of the CLI tool using Node Stream
tasshi
1
3.2k
グローバルチームことはじめ / Bootstrapping a global team
tasshi
1
3.5k
2年目サイボウズ社員とOSS / OSS development of junior engineer in Cybozu
tasshi
0
740
クレートを作ってcrates.ioに公開するまで / How to publishing to crates.io
tasshi
0
690
Other Decks in Programming
See All in Programming
非ブラウザランタイムとWeb標準 / Non-Browser Runtimes and Web Standards
petamoriken
0
440
ドメインイベント増えすぎ問題
h0r15h0
2
590
CloudNativePGがCNCF Sandboxプロジェクトになったぞ! 〜CloudNativePGの仕組みの紹介〜
nnaka2992
0
120
.NETでOBS Studio操作してみたけど…… / Operating OBS Studio by .NET
skasweb
0
130
Vue.jsでiOSアプリを作る方法
hal_spidernight
0
100
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
250
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
330
Rubyでつくるパケットキャプチャツール
ydah
0
240
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
170
Flatt Security XSS Challenge 解答・解説
flatt_security
0
780
自動で //nolint を挿入する取り組み / Gopher's Gathering
utgwkk
1
140
SRE、開発、QAが協業して挑んだリリースプロセス改革@SRE Kaigi 2025
nealle
1
2.3k
Featured
See All Featured
A Tale of Four Properties
chriscoyier
157
23k
How to Ace a Technical Interview
jacobian
276
23k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
20
2.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
For a Future-Friendly Web
brad_frost
176
9.5k
Building an army of robots
kneath
302
45k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
880
Transcript
2024年のkintone API 振り返りと2025年 2025.01.25 devkin meetup! Vol.4 @tasshi_me 1
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 はじめに 田代 雅治 (@tasshi_me) •
サイボウズ株式会社 • 2020 新卒入社 • 2021-24 kintone DXチーム • 2022-23 フロントエンド刷新PJ • 2024- kintone拡張基盤 チーム EM kintone DXデザイン チーム • 好きなもの • 自転車 • ゲーム • ロック 自己紹介 2
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 はじめに • kintoneの拡張機能(プラグイン・連携サービス)向けの 開発基盤を開発・保守するチーム •
API開発 • SDK/CLIなどのOSS提供 など kintone拡張基盤 チーム 3
2024年のまとめ 4 2024年のkintone APIを取り巻く変化
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のまとめ 30本以上のAPIがリリースされました • REST API:
26本(内、正式リリース21本) • JS API: 9本(内、正式リリース1本) 大きな変化 • APIラボの新設 • ワイドAPIの新設 • API・開発者ツール関連チームの再編成 2024年の主な変化 5
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のまとめ APIラボ(開発中の新機能) • 開発検討中のAPIを公開 •
アップデートオプションから有効化して利用 • フィードバックを参考に仕様改善しつつ正式リリースへ ワイドAPI • ワイドコース契約環境でのみ利用可能 • ガバナンス強化に役立つAPIなどが提供されている APIラボ・ワイドAPIの新設 6
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のまとめ API・開発者ツール関連チームの再編成 – 旧体制 7
kintone Webサービス本体 プラグイン 基盤 kintone新機能開発チーム kintone DXチーム 開発者向けクライアントツールを担当 kintoneの新機能の開発を担当 公開API クライアントツール 開発者向けツール - js-sdk 管理者向けツール - cli-kintone アプリ スペース レコード etc. APIとクライアントツールで担当するチームが分かれていた
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のまとめ API・開発者ツール関連チームの再編成 – 新体制 8
クライアントツール kintone Webサービス本体 開発者向けツール - js-sdk - Java Client 管理者向けツール - cli-kintone 公開API 基盤 プラグイン基盤 DXデザイン 拡張基盤 プラグイン・連携サービスを 実現するための 手段の実装・成果物に オーナーシップを持つ プラグイン・連携サービスの 開発者体験に オーナーシップを持つ DXデザイン API+周辺ツールのデザイン API・周辺ツールの 社内開発の最適化 アプリ スペース レコード etc. 公開API API基盤・クライアントツールを統合的に体験設計・実装する体制へ ※新機能開発チームの配下へ統合
2024年のAPIアップデート 9 全部紹介します!
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート • アプリ系(13本) • レコード系(1本)
• スペース系(4本) • プラグイン系(6本) • ワイドAPI(2本) • (+ OAuth対応API拡充) REST API 10
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート => アプリの自動構築やバックアップ/リストアに必要なアプリ設定の取得・更新APIが主に拡充された • アプリの一般設定を取得する(取得できる項目が増える)(GET
/k/v1/app/settings.json) • アプリの一般設定を取得する(「レコード一覧でのインライン編集」の設定を取得できる) • アプリの一般設定を変更する(変更できる項目が増える)(PUT /k/v1/preview/app/settings.json) • アプリの一般設定を変更する(「レコード一覧でのインライン編集」の設定を変更できる) • アプリ管理者用メモを取得する(GET /k/v1/app/adminNotes.json) • アプリ管理者用メモを変更する(PUT /k/v1/preview/app/adminNotes.json) • カテゴリの設定情報を取得する(GET /k/v1/app/categories.json) • カテゴリの設定情報を変更する(PUT /k/v1/preview/app/categories.json) REST API – アプリ系 (1/2) 11
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート • アプリに追加されているプラグインの一覧を取得する(GET/k/v1/app/plugins.json) • アプリにプラグインを追加する(POST
/k/v1/preview/app/plugins.json) • プラグインの設定情報を取得する(GET /k/v1/app/plugin/config.json) • プラグインの設定情報を変更する(PUT /k/v1/preview/app/plugin/config.json) • アプリの所属するスペースを変更する(POST /k/v1/app/move.json) REST API – アプリ系 (2/2) 12
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート • 複数のレコードを更新する(UPSERTモードを利用できる)(PUT /k/v1/records.json) REST
API – レコード系 13
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート • PUT records.jsonを拡張 •
リクエストパラメーターに upsert (boolean)を追加 • id or updateKeyに指定されたレコードを参照 • 指定のレコードが存在する場合 => レコード更新 • 指定のレコードが存在しない場合 => レコード追加 • これまではAPI利用側でUPSERT処理を実装する必要があった • kintone上のレコードを全件取得 → ローカルのレコードを追加・更新に振り分け → 追加・更新APIを個別実行 • レコード全件取得を原因とするメモリ使用量の肥大化や実行時間の増加、リクエスト数増加が発生していた • 実装も複雑になっていた • cli-kintoneにも試験的に導入済み (>=v1.13.0) • --experimental-use-server-side-upsert フラグを指定で利用可能 【Pick up!!】複数のレコードを更新する(UPSERTモードを利用できる) 14
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート • スペースの情報を取得する(取得できる項目が増える)(GET /k/v1/space.json) •
スペースの設定を変更する(PUT /k/v1/space.json) • スペースを作成する(POST /k/v1/space.json) • スペースのスレッドを作成する(POST /k/v1/space/thread.json) スペーステンプレートからスペースを作成するAPIは元々あった => APIからより柔軟にスペースを作成・変更できるように REST API – スペース系 15
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート • プラグインを読み込む(POST /k/v1/plugin.json) •
プラグインを更新する(PUT /k/v1/plugin.json) • プラグインをアンインストールする(DELETE /k/v1/plugin.json) • インストール済みのプラグインの一覧を取得する(GET /k/v1/plugins.json) • インストールが必要なプラグインの一覧を取得する(GET /k/v1/plugins/required.json) • 対象のプラグインを追加しているアプリの一覧を取得する(GET /k/v1/plugin/apps.json) => プラグイン操作の自動化を実現可能に • システム管理者・導入担当者がプラグインの導入・更新・棚卸しを自動化 • プラグイン開発者がアップロードを自動化 • アプリ管理者がアプリに必要なプラグインの適用・変更を自動化 など REST API – プラグイン系 16
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート => 使用状況を取得するAPIを追加 • アプリの使用状況を取得する(GET
/k/v1/apps/statistics.json) • スペースの使用状況を取得する(GET /k/v1/spaces/statistics.json) REST API – ワイドAPI 17
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート • OAuthクライアントで使用できるREST APIを増やす変更 •
以下の2つのスコープで利用できるREST APIを拡充 • k:app_settings:read • k:app_settings:write • 2020年~で追加されたアプリ設定の取得/変更系のAPIが対象 • k:app_settings:read • グラフの設定を取得する(GET /k/v1/app/reports.json) • アプリの条件通知の設定を取得する(GET /k/v1/app/notifications/general.json) • レコードの条件通知の設定を取得する(GET /k/v1/app/notifications/perRecord.json) • リマインダーの条件通知の設定を取得する(GET /k/v1/app/notifications/reminder.json) • アプリのアクション設定を取得する(GET /k/v1/app/actions.json) • k:app_settings:write • グラフの設定を変更する(PUT /k/v1/preview/app/reports.json) • アプリの条件通知の設定を変更する(PUT /k/v1/preview/app/notifications/general.json) • レコードの条件通知の設定を変更する(PUT /k/v1/preview/app/notifications/perRecord.json) • リマインダーの条件通知の設定を変更する(PUT /k/v1/preview/app/notifications/reminder.json) • アプリのアクション設定を変更する(PUT /k/v1/preview/app/actions.json) REST API – OAuth 18
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート • 情報取得・設定系 • アプリのアイコンのURLを取得する(kintone.app.getIcons)
• ログインユーザーのアプリに対するアクセス権を取得する(kintone.app.getPermissions) • ログインユーザーのレコードに対するアクセス権を取得する(kintone.app.record.getPermissions) • アプリ情報を取得する(kintone.app.get) • スペース情報を取得する(kintone.space.get) • (kintone.getLoginUser()のlanguageプロパティの仕様変更) • UI操作系 • サイドバーを表示する(kintone.app.record.showSideBar) • サイドバーを非表示にする(kintone.app.record.hideSideBar) • レコード追加ボタンの表示/非表示を変更する(kintone.app.setRecordAddButtonShown) • レコード編集ボタンの表示/非表示を変更する(kintone.app.record.setRecordEditButtonShown) JS API 19
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 2024年のAPIアップデート • メソッド: kintone.app.getIcons(apps: string[])
• 返り値: Array<{app: string, url: string}> これまでカスタマイズ上でアプリアイコンを表示するにはハック的手段が必要だった • アプリの一般設定を取得するAPIでアイコン情報が取得 • 設定値のバックアップに適した情報のためアイコン表示用途では使いにくい • icon.keyまたはicon.fileを取得→ファイルをダウンロードして別アプリに保存、もしくは埋め込み表示 • 非正規操作 => 新APIでは取得したアイコンURLをそのままimgタグに指定可能 • 注意:レスポンスのアイコンURLは保存せず、毎回取得してください • URLの形式は今後のアップデートで変わりうるため 【Pick up!!】アプリのアイコンのURLを取得する 20
2025年のkintone API 21 ※サイボウズとして将来の機能開発を お約束するものではありません
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 会場限定 2025年のkintone API 2025年どうなっていくと思うか 22
2024年のkintone API振り返りと2025年- devkin meetup! Vol.4 おわりに • フィードバックの例 • APIラボで提供されている〇〇のAPIを早く本番利用したい
• 〇〇の用途のために△△のようなAPIを提供してほしい • ユースケースやサンプルコードもあるとより参考になります! kintone APIの改善に協力をお願いします!! 23
ご清聴ありがとうございました 24 2025年も kintone を盛り上げて行きましょう! よろしくお願いします!