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
API Design with Apiary
Search
Z
March 17, 2016
Programming
140
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
API Design with Apiary
As presentent on ofmForum.
Z
March 17, 2016
More Decks by Z
See All by Z
When AI Agents Start Moving Money
zdne
0
20
Agentic Commerce - arcpay.ai
zdne
1
110
APIs at the Verge of AI
zdne
0
240
Delivering APIs for AI
zdne
0
330
APIs for AI: Have we failed?
zdne
0
360
AI-enabled APIs
zdne
0
170
Autonomous Agents
zdne
0
200
API Documentation & AI
zdne
0
220
APIs in N-tier architecture
zdne
0
600
Other Decks in Programming
See All in Programming
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
14
5.9k
Lessons from Spec-Driven Development
simas
PRO
0
230
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
180
これからAgentCoreを触る方へトレンドはGatewayです
har1101
5
430
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
140
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
280
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.3k
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
9k
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.5k
Datadog LLM Observabilityで実現する 安全なLLM Usage 管理
3150
0
130
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
120
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
12
4.5k
Featured
See All Featured
Odyssey Design
rkendrick25
PRO
2
710
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
210
Measuring & Analyzing Core Web Vitals
bluesmoon
9
870
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
260
WENDY [Excerpt]
tessaabrams
11
38k
Are puppies a ranking factor?
jonoalderson
1
3.7k
Un-Boring Meetings
codingconduct
0
330
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
950
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
180
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Designing Experiences People Love
moore
143
24k
Transcript
API DESIGN WITH APIARY Z – @zdne Apiary.io
4 STAGES OF API MATURITY API as a by- product
of building apps API documentation generated from code Design-first API Development API Design Consistency
APIARY.IO
DESIGN-FIRST
API DESCRIPTION • API Blueprint • OpenAPI Specification (Swagger) •
Others (RAML, WADL, WSDL, Email, Word document)
API BLUEPRINT
# User [/user] ## Retrieve [GET] Retrieves the . +
Response 200 (application/json) { "name": "John" }
None
None
API LIFECYCLE
Preparation Design Development Delivery Consumption Analysis CLASSIC API LIFECYCLE
Preparation Design & Prototype Development Delivery Consumption Analysis API LIFECYCLE
WITH APIARY
Preparation 1. Define domain semantics 2. Choose architectural style 3.
Define a style guide*
Design & Prototype 1. Formalize API in an API Description
format* 2. Put API Description in a VCS 3. Circulate & Review 4. Apiary Mock Server
Develop 1. API Description in the same repository as implementation
2. Test locally 3. Test with Apiary 4. Test in CI
Deliver 1. Share VCS repository 2. Share Apiary Documentation 3.
Embed Apiary Documentation
Consume 1. Apiary Documentation 2. Apiary Mock Server 3. Documentation
Console 4. Language Examples 5. Apiary Traffic Inspector 6. Apiary Proxy
Analysis
BONUS: GOVERNANCE • Design Rules • Style Guides • Better
DX through CONSISTENCY
BONUS: MSON • Human readable data description • Reusable, format-agnostic
data modeling language • Data is your API
TRY IT NOW http://apiary.io Q&A @apiaryio
None
MIND SHIFT • Describe resource NOT representation • Define domain
semantics • Reuse common semantics • Do NOT focus on technical details • URIs • representations • schema validations
API ISN’T… • API is not pretty URLs • API
is not HTTP Verbs • API is not CRUD • API is not JSON
REST ARCHITECTURAL STYLE • Client–server • Stateless • Cacheable •
Layered system • Code on Demand (optional) • Uniform Interface • Identification of resources • Manipulation through representations • Self-descriptive messages • Hypermedia as the engine of the application state
Feedback Design Delivery Prototype Development SIMPLE API LIFECYCLE
REFERENCE • http://apiary.io • http://apiblueprint.org • https://github.com/apiaryio/mson • http://www.ics.uci.edu/~fielding/pubs/dissertation/ rest_arch_style.htm