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
Google API Design Guideを読んだまとめ
Search
peka2
May 09, 2017
Technology
0
92
Google API Design Guideを読んだまとめ
Google API Design GuideからAPI設計を学ぶ
peka2
May 09, 2017
Tweet
Share
Other Decks in Technology
See All in Technology
配列に見る bash と zsh の違い
kazzpapa3
3
160
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
600
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
380
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
350
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
160
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
220
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
230
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
320
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.5k
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.8k
ランサムウェア対策としてのpnpm導入のススメ
ishikawa_satoru
0
190
Featured
See All Featured
BBQ
matthewcrist
89
10k
Mind Mapping
helmedeiros
PRO
0
88
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
440
Google's AI Overviews - The New Search
badams
0
910
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
910
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
76
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
430
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
From π to Pie charts
rasagy
0
120
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Transcript
Google API Design Guide Λ ಡΜͩ·ͱΊ @peka2
APIྺ • Yahoo! ϘοΫε APIઃܭɾ։ൃ • ϠϑΦΫAPIΨΠυϥΠϯ࡞ • ϠϑΦΫΞϓϦAPIઃܭɾ։ൃ
Ϟνϕʔγϣϯ • ࠷ۙެ։͞ΕͨAPIσβΠϯΨΠυ • TechGiantAPIઃܭ͔Βֶͼ͍ͨ
Google API Design Guideͱ • https://cloud.google.com/apis/design/ • 2017 2/20 ʹެ։͞Εͨ
• 2014͔ΒGoogle෦Ͱ࣮ࡍʹΘΕ͍ͯΔAPIσβΠϯΨ Πυ • REST, gRPC ͲͪΒʹͰ͑ΔΑ͏ʹ࡞ΒΕͯΔ • ܾఆ൛Ͱͳ͘ɺʑه͞Ε͍ͯ͘
Google API Design Guide • جຊRESTful
ΧελϜϝιου • httpϝιουʹϚοϐϯάͰ͖ͳ͍ૢ࡞ʹରͯ͠ɺ࡞ͬͯྑ ͍ • :ಈࢺ Λ࠷ޙʹ͚ͭͯࣔ͢ • ϝιουॊೈͰ͋ΔPOSTΛਪ •
PATCHͰ͏͖Ͱͳ͍ https://service.name/v1/some/resource/name:customVerb
ΧελϜϝιου༻ྫ • VM࠶ىಈ • ঢ়ଶͷભҠΛߦ͏APIɺ࠶ىಈϦιʔεΛ࡞ΔAPIΑΓɺΧελϜϝ ιουͷํ͕ײత • ϝʔϧૹ৴ • υϥϑτˠૹ৴τϨΠҠಈɺͱ͍͏σβΠϯΑΓɺΧελϜϝιο
υͷํ͕ײత • RESTfulʹͩ͜ΘΔΑΓɺϢʔβ͕ײతʹΘ͔Δ͜ͱ͕ॏཁ
ͦͦRESTfulͬͯ • ։ൃऀؒͷηϚϯςΟοΫΪϟοϓΛຒΊΔ͜ͱͰɺ୭ʹ ͰײతͳAPIΛઃܭͰ͖Δͷ͕རͷҰͭ • ແཧΓRESTfulΛద༻͢Δ͜ͱͰখ͍͠APIʹͳͬͯ ͠·͏ͳΒɺΧελϜϝιουͷ΄͏͕ײత
Τϥʔදݱ • Τϥʔίʔυগͳ͚Εগͳ͍΄Ͳɺ ΫϥΠΞϯτͷϩδοΫ͕ෳࡶʹͳΒ ͳͯ͘ࡁΉ • https://github.com/googleapis/ googleapis/blob/master/google/ rpc/code.proto •
15छྨ • statusʢΤϥʔίʔυʣྻͰͳ ͘ɺਓؒͰಡΊΔӳ୯ޠΛͬͯΔ
ϖʔδωʔγϣϯ • ϦετԽͰ͖ΔίϨΫγϣϯͲΜͳখ͞ͳͷͰϖʔδωʔ γϣϯΛ࣮͓͖ͯ͘͠ • طଘͷAPIʹϖʔδωʔγϣϯΛޙ͔Β࣮͢Δͱɺݩʑશ݅ ฦ͍ͯͨ͠ͷ͕̍ϖʔδʢσϑΥϧτϖʔδʣͷΈฦ͢ɺ ͱ͍͏Α͏ͳڍಈͷมߋ͕ൃੜͯ͠͠·͏͔Β • ϦΫΤετɿpage_sizeͱpage_token
Ϩεϙϯεɿnext_page_token
ଞ • *Ͱͳ͘-Λ͍·͠ΐ͏ • URLΤεέʔϓͷ߹্ • ϦιʔεͷҰ෦ͷϑΟʔϧυ͚ͩฦͤΔΑ͏ʹ͢Δͱศར • ϦιʔεΛfullͰͳ͘basicͳͷ͚ͩड͚औΕΔΑ͏ʹ͢Δͱศར •
APIυΩϡϝϯτͷ࡞Γํ • ͳͲͳͲɾɾɾ
·ͱΊ • RESTfulΛਪ͍ͯ͠Δ͕ײతͳઃܭΛॏࢹ • ෳαʔϏεͰ༷͕ࠞ͠ͳ͍Α͏ʹɺϖʔδωʔγϣϯ ͳͲϧʔϧ͕ݫ֨ʹܾ·͍ͬͯΔ • ༷ͱυΩϡϝϯτprotoϑΝΠϧͰཧ • APIઃܭͷࢿྉͱͯ͠े·ͱ·͍ͬͯͯ͑ͦ͏
https://speakerdeck.com/hirak/mercariday2017-api
• LSUDs • ͖Ε͍ͳAPI • SSKDs • ࣮ʼඒ͠͞ • վम͠·͘ΕΔઃܭ