Submit Search
カラーミーAPIドキュメントの今後
0 likes
•
2,342 views
Joe_noh
GMOペパボ 第1回 EC事業部 TechMTGで使用したスライドです。
Technology
Read more
1 of 17
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
More Related Content
PDF
Deploy to Lobi
Hiroaki Nagata
PDF
逆説のカスタマーサクセス
Takaaki Umada
PDF
サイクルOJTイントロダクション
Joe_noh
PPTX
goa Design first API Generation
yoshinori sugiyama
PDF
Elixirだ 第2回
Joe_noh
PDF
Elixirだ 第3回
Joe_noh
PDF
Ruby way-openstack.keynote
Uchio Kondo
PDF
Elixirだ 第1回 - 基礎だ -
Joe_noh
Deploy to Lobi
Hiroaki Nagata
逆説のカスタマーサクセス
Takaaki Umada
サイクルOJTイントロダクション
Joe_noh
goa Design first API Generation
yoshinori sugiyama
Elixirだ 第2回
Joe_noh
Elixirだ 第3回
Joe_noh
Ruby way-openstack.keynote
Uchio Kondo
Elixirだ 第1回 - 基礎だ -
Joe_noh
Viewers also liked
(19)
PDF
pixivのインフラになって2ヶ月がたった - NSEG feat. 高専カンファレンス
Shunsuke Michii
PDF
Railsアプリのモジュールはどこに置くべきか問題 (公開版)
Ken Muryoi
PDF
Vue.jsコンポーネントのススメ
takanori sugawara
PDF
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
Ryo Mitoma
PDF
初心者のためのWeb標準技術
Shogo Sensui
PDF
CS Young Meetup Vol.2(コードキャンプ株式会社 藤本大輔)
knowledge_sakura
PDF
コードレビューのススメ
kawahira kazuto
PDF
20150326 ピクト図解 ビジネスモデルキャンバス入門_v1.1(eLV様主催)
Hidehiko Akasaka
PDF
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
Koichi Sakata
PDF
Mercari ogawa cs_youngmeetup_20170123_今年の抱負
Naoki Ogawa
PDF
sqldf for pandas
airtoxin Ishii
PDF
BACKBONE.JSによるWebアプリケーション開発について
Toshio Ehara
PDF
CS Young Meetup Vol.2(GMOペパボ株式会社 吉林美貴)
knowledge_sakura
PDF
You Should Attend Rubykaigi2010
Shintaro Kakutani
PDF
ユーザーストーリー・マッピング
Tarumoto Tetsuya
PPTX
CS Young Meetup Vol.2(さくらインターネット株式会社 小林なつ美)
knowledge_sakura
PDF
pandasによるデータ加工時の注意点やライブラリの話
Masashi Shibata
PDF
アジャイルアンチパターン 〜私がアジャイルの1周目で学んだこととXPの次の10年〜
Fumihiko Kinoshita
PDF
Panel discussion Nonaka with Hiranabe At Scrum Gathering Tokyo 2013
Kenji Hiranabe
pixivのインフラになって2ヶ月がたった - NSEG feat. 高専カンファレンス
Shunsuke Michii
Railsアプリのモジュールはどこに置くべきか問題 (公開版)
Ken Muryoi
Vue.jsコンポーネントのススメ
takanori sugawara
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
Ryo Mitoma
初心者のためのWeb標準技術
Shogo Sensui
CS Young Meetup Vol.2(コードキャンプ株式会社 藤本大輔)
knowledge_sakura
コードレビューのススメ
kawahira kazuto
20150326 ピクト図解 ビジネスモデルキャンバス入門_v1.1(eLV様主催)
Hidehiko Akasaka
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
Koichi Sakata
Mercari ogawa cs_youngmeetup_20170123_今年の抱負
Naoki Ogawa
sqldf for pandas
airtoxin Ishii
BACKBONE.JSによるWebアプリケーション開発について
Toshio Ehara
CS Young Meetup Vol.2(GMOペパボ株式会社 吉林美貴)
knowledge_sakura
You Should Attend Rubykaigi2010
Shintaro Kakutani
ユーザーストーリー・マッピング
Tarumoto Tetsuya
CS Young Meetup Vol.2(さくらインターネット株式会社 小林なつ美)
knowledge_sakura
pandasによるデータ加工時の注意点やライブラリの話
Masashi Shibata
アジャイルアンチパターン 〜私がアジャイルの1周目で学んだこととXPの次の10年〜
Fumihiko Kinoshita
Panel discussion Nonaka with Hiranabe At Scrum Gathering Tokyo 2013
Kenji Hiranabe
Ad
Similar to カラーミーAPIドキュメントの今後
(20)
PDF
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
Daichi Koike
PDF
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Toru Kawamura
PDF
Swaggerを利用した新規サービス開発
recotech
PDF
[出張!雲勉 in Tokyo] Swagger で簡単APIドキュメント作成
Tomoki Oyamatsu
PDF
SwaggerとAPIのデザイン
Kazuhiro Hara
PPTX
Swagger jjug ccc 2018 spring
kounan13
PDF
【2018/09/11】PAYでのReact Nativeにおける APIクライアント実装 について
Natsuki Yamanaka
PDF
Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_
Akito Tsukahara
PPTX
Open APIで定義しよう! 実践編
iPride Co., Ltd.
PDF
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
PPTX
APIドキュメントの話 #sphinxjp
Takeshi Komiya
PPT
マッシュアップ勉強会
guestadcb01
PPT
マッシュアップ勉強会
seiryo
KEY
Mojoliciousをウェブ制作現場で使ってみてる
jamadam
PPTX
はじめてのApi体験記
yumi_chappy
PDF
第2回 人形町Techで騒がnight
Satoru Mikami
PDF
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Kazuya Sugimoto
PDF
#recotech_WIZY開発の裏側
recotech
PDF
Swaggerでのapi開発よもやま話
KEISUKE KONISHI
PDF
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
Daichi Koike
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Toru Kawamura
Swaggerを利用した新規サービス開発
recotech
[出張!雲勉 in Tokyo] Swagger で簡単APIドキュメント作成
Tomoki Oyamatsu
SwaggerとAPIのデザイン
Kazuhiro Hara
Swagger jjug ccc 2018 spring
kounan13
【2018/09/11】PAYでのReact Nativeにおける APIクライアント実装 について
Natsuki Yamanaka
Web api開発をするなら ドキュメントは自動生成にしておこう__ph_per_kaigi2021_
Akito Tsukahara
Open APIで定義しよう! 実践編
iPride Co., Ltd.
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
APIドキュメントの話 #sphinxjp
Takeshi Komiya
マッシュアップ勉強会
guestadcb01
マッシュアップ勉強会
seiryo
Mojoliciousをウェブ制作現場で使ってみてる
jamadam
はじめてのApi体験記
yumi_chappy
第2回 人形町Techで騒がnight
Satoru Mikami
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger)
Kazuya Sugimoto
#recotech_WIZY開発の裏側
recotech
Swaggerでのapi開発よもやま話
KEISUKE KONISHI
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
Ad
More from Joe_noh
(20)
PDF
パフォーマンス改善のためにやったこと・やらなかったこと
Joe_noh
PDF
Vue.jsのユニットテスト
Joe_noh
PDF
Vuexと入力フォーム
Joe_noh
PDF
お産ウィークイントロダクション
Joe_noh
PDF
モバイルアプリ研修イントロダクション
Joe_noh
PDF
Webオペレーション研修イントロダクション
Joe_noh
PDF
Web開発研修イントロダクション
Joe_noh
PDF
リーンキャンバス
Joe_noh
PDF
もっとgit
Joe_noh
PPTX
できないことはPortで外注
Joe_noh
PDF
DBにseedするライブラリつくった
Joe_noh
PDF
やってみた -URL外形監視-
Joe_noh
PDF
Elixirだ 第6回
Joe_noh
PDF
Elixirだ 第5回
Joe_noh
PDF
Elixirだ 第4回
Joe_noh
PDF
Elixirだ 第1回強化版 後半
Joe_noh
PDF
Elixirだ 第1回強化版 前半
Joe_noh
PDF
Declaimerっていうやつつくった(つくってる)
Joe_noh
ODP
いつかどこかで使えそうな英語
Joe_noh
PDF
NUTハッカソン2014成果報告
Joe_noh
パフォーマンス改善のためにやったこと・やらなかったこと
Joe_noh
Vue.jsのユニットテスト
Joe_noh
Vuexと入力フォーム
Joe_noh
お産ウィークイントロダクション
Joe_noh
モバイルアプリ研修イントロダクション
Joe_noh
Webオペレーション研修イントロダクション
Joe_noh
Web開発研修イントロダクション
Joe_noh
リーンキャンバス
Joe_noh
もっとgit
Joe_noh
できないことはPortで外注
Joe_noh
DBにseedするライブラリつくった
Joe_noh
やってみた -URL外形監視-
Joe_noh
Elixirだ 第6回
Joe_noh
Elixirだ 第5回
Joe_noh
Elixirだ 第4回
Joe_noh
Elixirだ 第1回強化版 後半
Joe_noh
Elixirだ 第1回強化版 前半
Joe_noh
Declaimerっていうやつつくった(つくってる)
Joe_noh
いつかどこかで使えそうな英語
Joe_noh
NUTハッカソン2014成果報告
Joe_noh
Recently uploaded
(7)
PDF
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
PPTX
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
PDF
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
PDF
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
PDF
20250729_Devin-for-Enterprise
Masaki Yamakawa
PDF
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
PDF
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
20250729_Devin-for-Enterprise
Masaki Yamakawa
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
カラーミーAPIドキュメントの今後
1.
カラーミーAPIドキュメントの今後 @Joe_noh / 第1回
EC事業部 TechMTG
2.
本日のお話 ● 話すこと ○ 現状と問題点 ○
解決案 ○ 決めないといけないこと ● ゴール ○ 今後の構成についてカラーミー開発者の同意を得る
3.
現状の開発手順 1. APIを実装する 2. interpolのYAMLを書く 3.
APIをデプロイする 4. wwwにあるドキュメントを直す 5. wwwをデプロイする name: show_shop route: /v1/shop.json method: GET definitions: - message_type: request versions: ["1.0"] path_params: {} query_params: {} schema: {} examples: [] - message_type: response versions: ["1.0"] status_codes: ["200"] schema: type: object properties: shop: type: object
4.
課題と解決策 ● 課題 ○ ドキュメントを手で書いている ○
API開発とドキュメント更新とプルリク2回出している ○ デプロイも2回やっている ○ Interpolがもうメンテナンスされてない ● 解決策 ○ Interpolをやめて別の仕様に則ってAPI仕様を書く ○ その仕様からドキュメントを自動生成する
5.
APIドキュメント界隈 ● 仕様たち ○ OpenAPI(Swagger) ○
API Blueprint ○ RAML ● どれがいいの? ○ できることはそれほど変わらない ■ ドキュメント生成 ■ コード(クライアントライブラリ、モックサーバ)生成 ○ 一番コミュニティが大きいOpenAPIに乗ります
6.
OpenAPI ● 概要 ○ RESTful
APIを記述するための仕様 ○ Swagger 2.0ベース ○ 3.0.0-RC.0が最新 ● 周辺ツール ○ Swagger Editor ○ Swagger Codegen ○ Swagger UI ○ など
7.
OpenAPIの例 : paths: /pets: get: description: ... operationId: findPets parameters: -
name: limit in: query description: ... type: integer format: int32 responses: "200": description: pet response schema: type: array items: $ref: '#/definitions/Pet' default: description: unexpected error schema: $ref: '#/definitions/Error' swagger: "2.0" info: version: 1.0.0 title: Swagger Petstore description: ... termsOfService: http://swagger.io/terms/ contact: name: Swagger API Team email:
[email protected]
url: http://example.com license: name: MIT url: http://github.com/.../LICENSE-MIT host: petstore.swagger.io basePath: /api schemes: - http consumes: - application/json produces: - application/json : その他の例は github.com/OAI/OpenAPI-Specification で
8.
やるべきこと ● OpenAPIに則ってYAMLかJSONを書く ● HTTP越しに取得できるようにする ●
ドキュメントに変換して公開する
9.
OpenAPIに則ってYAMLかJSONを書く ● YAMLかJSONに仕様を書く ○ YAMLの方が書きやすいのでYAMLで ●
最終的に1ファイルにする ○ 書くときは複数に分割していてもOK ○ デプロイのときに1ファイルにまとめて公開する ■ https://github.com/Joe-noh/yaml_ref_resolver ○ 公開するファイルはJSON ■ YAMLを配っている人たちはあまりいない
10.
HTTP越しに取得できるようにする ● なぜに ○ URL指定を前提としたツールが多い ○
社外公開できるものは公開しておくと可能性が広がる ● どこで ○ 例えば https://api.shop-pro.jp/v1/spec.json ○ APIに自分を説明させる
11.
ドキュメントに変換して公開する ● 既存ツールに頼る ○ swagger-ui ○
swagger-codegen ○ ReDoc ○ など
12.
ドキュメント生成ツール ● swagger-ui ○ インタラクティブなドキュメントを生成する ■
http://developer.marvel.com/docs ■ https://usdigitalregistry.digitalgov.gov/ ● swagger-codegen ○ モックサーバなどのコードを生成する ○ HTML用のテンプレが2つある
13.
ドキュメント生成ツール ● ReDoc ○ 動的にドキュメントを描画するAngularアプリケーション ○
カスタマイズはまだあまりできない ■ ロードマップには入っている ■ 将来的にある程度できるようになりそう ○ 利用例 ■ https://rebilly.github.io/RebillyAPI/ ■ https://docs.docker.com/engine/api/v1.26/ まずはこれでいいんじゃないか感があります
14.
まずは ReDoc でいいんじゃないか感 ●
工数は抑えたい ● ちょっとならカスタマイズできそう ○ ロゴと色をいじるくらい ○ どうしても満足できないときは自作も視野に入れる ■ 突き詰めるとJSONを取ってきてテンプレに当てはめるだけ ● 他のツールへ乗り換えが難しくない ○ OpenAPIのYAMLは書き直さなくていい
15.
クライアント 図 カラーミーAPI New → ② /v1/spec.jsonを取得①
ReDocなど含んだ HTML一式を取得
16.
現状 → 今後 1.
APIを実装する 2. interpolのYAMLを書く 3. APIをデプロイする 4. wwwにあるドキュメントを直す 5. wwwをデプロイする 1. APIを実装する 2. OpenAPIのYAMLを書く 3. APIをデプロイする → spec.jsonが更新される → ドキュメントも更新される
17.
決めないといけないこと ● リポジトリの名前 ○ ReDocを含んだHTML一式を管理する場所 ●
OpenAPI JSONのURL ○ https://api.shop-pro.jp/v1/spec.json ○ https://api.shop-pro.jp/v1/swagger.json ○ https://api.shop-pro.jp/v1/openapi.json ● 新ドキュメントのURL ○ https://shop-pro.jp/?mode=api_interface ○ https://api.shop-pro.jp/v1/docs ○ https://api-doc.shop-pro.jp/v1
Download