SlideShare a Scribd company logo
2
Most read
9
Most read
10
Most read
API First Workflow:
Better API Docs through a DevOps
pipeline
Yantian You
yantian.you@sas.com
API Integration Engineer @SAS
AGENDA
01
02
Current API Process (Code first)
vs API First (Design First)
API First Workflow / Vision
03 Use cases and examples
Developers Testers Reviews
Documentation
Code first
Product-Led
Developer-Led
Developers
Documentation Continuous Delivery
OpenAPI 3.0 Specification
Testers
Product
Manager
Design First
API First Roadmap
Planning Mindset
Automation (CI/CD)
Efficiency Usability
API First Workflow
API Design API Specification Tool chain APIs
tests
documents
Code
template
Mock
services Cloud
Platform
Security
check
Other docs
A Quick Overview
Development Cycle
Continuous Integration
Mock
Server
Lint
Team
Review
Rejected
Approved
Merge to
Master
Server Code
Generated (Boiler
Plate)
Mock Server
Started
Documentation
Generated
Development Cycle Continued
Testers /
PreSales
Tech
Writers
Edits
Contract testing
Testers
test Code
Developer
adds logic
Commits code
Tests Fail
Tests
Pass
Final
Team
Review
Publish API
Write
OpenAPI
Pull
Request
Client Code
generated
API
Spec
Key
Human
Automatic /
Machine Done
Fail
Pass
…
Let’s go deeper into it
Design Workshop
Stoplight Studio
Swagger Editor
Apicurio
Spec gen tool(Web/GUI)
Opensource
API Specification
Product manager + Customer +
Stakeholder + Testers + Developers
How to get an API Spec at the very beginning?
API First Workflow: How could we have better API Docs through DevOps pipeline
API First Workflow: How could we have better API Docs through DevOps pipeline
Development Cycle
Continuous Integration
Mock
Server
Lint
Team
Review
Rejected
Approved
Merge to
Master
Server Code
Generated (Boiler
Plate)
Mock Server
Started
Documentation
Generated
Development Cycle Continued
Testers /
PreSales
Tech
Writers
Edits
Contract testing
Testers
test Code
Developer
adds logic
Commits code
Tests Fail
Tests
Pass
Final
Team
Review
Publish API
Write
OpenAPI
Pull
Request
Client Code
generated
API
Spec
Key
Human
Automatic /
Machine Done
Fail
Pass
Let’s talk about the automation part
API
Dev
Mock
server
Server
code
Client &
Test
Deploy on k8s
cloud server
Push to git
platform
Review &
pull the
branch
Doc gen
Input
Deepmap
OpenAPI -
Gen
Swagger-
Gen
Code gen tool (Containers)
Prism Apisprout
Mock tool (Containers)
Opensource
Opensource
Doc
Initial
Spectral
Opensource
Linting tool(Containers)
API Spec Spec linting
Test &
Review &
Merge
contract/smoke/unit
Test
Input
API Spec Tool Box 1 Tool Box 2 Tool Box 3 Tool Box n
For local run and testing:
Tooling containers & Sage tools(= Sas + mage)
For running in the pipeline:
Using the same tooling containers
OpenSource tools in the pipeline
Use cases and examples
Linting your specification
spectral
API First Workflow: How could we have better API Docs through DevOps pipeline
Building the mock server
Take API Specification as the input, run prism
tool for building a mock service
• Build the mock server locally
• Build the mock server through the
pipeline - auto-deploy to a k8s cluster
with istio configured. Each of the API
mock service will have a unique
hostname
• Testers could start playing around the
mock services even before the real
service comes out
API Spec
Local mock Assign a namespace
Configure ingress rule
Deploy the services
Remote mock
API First Workflow: How could we have better API Docs through DevOps pipeline
Input
API Spec Tool Box 1 Tool Box 2 Tool Box 3 Tool Box n
New Tool 1
New Tool 3
Tools in the future
Questions?
Thank you!

More Related Content

What's hot (20)

PDF
What Is DevOps? | Introduction To DevOps | DevOps Tools | DevOps Tutorial | D...
Edureka!
 
PDF
Platform engineering
Prasanna Venkatesan
 
PPTX
REST API
Tofazzal Ahmed
 
PPT
Introduction to the Web API
Brad Genereaux
 
PDF
{Re}designing a Developer Portal
Pronovix
 
PPSX
Microservices Architecture - Cloud Native Apps
Araf Karsh Hamid
 
PPTX
Belajar Postman test runner
Fachrul Choliluddin
 
PDF
Introduction to red hat agile integration (Red Hat Workshop)
Judy Breedlove
 
PDF
Api design best practice
Red Hat
 
PPTX
Azure devops
Mohit Chhabra
 
PDF
DevOps - A Gentle Introduction
CodeOps Technologies LLP
 
PDF
REST API and CRUD
Prem Sanil
 
PPT
Effective API Design
Bansilal Haudakari
 
PDF
Api Testing.pdf
JitendraYadav351971
 
ODP
Openshift Container Platform
DLT Solutions
 
PPTX
Restful api
Anurag Srivastava
 
PPTX
Serverless Computing in Azure
Daniel Toomey
 
PDF
apidays Paris 2022 - Event-Driven API Management – why REST isn't enough, Ben...
apidays
 
PDF
Architecting an Enterprise API Management Strategy
WSO2
 
PPTX
Api types
Sarah Maddox
 
What Is DevOps? | Introduction To DevOps | DevOps Tools | DevOps Tutorial | D...
Edureka!
 
Platform engineering
Prasanna Venkatesan
 
REST API
Tofazzal Ahmed
 
Introduction to the Web API
Brad Genereaux
 
{Re}designing a Developer Portal
Pronovix
 
Microservices Architecture - Cloud Native Apps
Araf Karsh Hamid
 
Belajar Postman test runner
Fachrul Choliluddin
 
Introduction to red hat agile integration (Red Hat Workshop)
Judy Breedlove
 
Api design best practice
Red Hat
 
Azure devops
Mohit Chhabra
 
DevOps - A Gentle Introduction
CodeOps Technologies LLP
 
REST API and CRUD
Prem Sanil
 
Effective API Design
Bansilal Haudakari
 
Api Testing.pdf
JitendraYadav351971
 
Openshift Container Platform
DLT Solutions
 
Restful api
Anurag Srivastava
 
Serverless Computing in Azure
Daniel Toomey
 
apidays Paris 2022 - Event-Driven API Management – why REST isn't enough, Ben...
apidays
 
Architecting an Enterprise API Management Strategy
WSO2
 
Api types
Sarah Maddox
 

Similar to API First Workflow: How could we have better API Docs through DevOps pipeline (20)

PDF
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
SmartBear
 
PDF
Space Camp June 2022 - API First.pdf
Postman
 
PPTX
2022 APIsecure_Securing APIs with Open Standards
APIsecure_ Official
 
PDF
Why You Should Be Doing Contract-First API Development
DevenPhillips
 
PDF
Spec-first API Design for Speed and Safety
Atlassian
 
PDF
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
SmartBear
 
PDF
Api clarity webinar
LibbySchulze
 
PDF
OpenAPI Intro (1).pdf
Postman
 
PDF
APIdays Singapore 2019 - Bringing OpenAPI to devOps, Vincenzo Chianese, Softw...
apidays
 
PDF
Always up to date, testable and maintainable documentation with OpenAPI
GOG.com dev team
 
PPTX
API City 2019 Presentation - Delivering Developer Tools at Scale: Microsoft A...
Joe Levy
 
PDF
API Description Languages
Akana
 
PDF
API Description Languages
Akana
 
PDF
Presentation at the 2016 Linux Foundation Collab Summit
Open API Initiative (OAI)
 
PDF
Service api design validation & collaboration
Uchit Vyas ☁
 
PPTX
apidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMG
apidays
 
PPTX
API Tools.pptx
Subramanian Krishnan
 
PPTX
apidays LIVE Paris 2021 - Inside API delivery Pipeline, the checklist! - Fran...
apidays
 
PPTX
API Versioning for Zero Downtime | Devoxx Belgium 2017
Patrice Krakow
 
PPTX
Delivering Developer Tools at Scale
Oracle Developers
 
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
SmartBear
 
Space Camp June 2022 - API First.pdf
Postman
 
2022 APIsecure_Securing APIs with Open Standards
APIsecure_ Official
 
Why You Should Be Doing Contract-First API Development
DevenPhillips
 
Spec-first API Design for Speed and Safety
Atlassian
 
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
SmartBear
 
Api clarity webinar
LibbySchulze
 
OpenAPI Intro (1).pdf
Postman
 
APIdays Singapore 2019 - Bringing OpenAPI to devOps, Vincenzo Chianese, Softw...
apidays
 
Always up to date, testable and maintainable documentation with OpenAPI
GOG.com dev team
 
API City 2019 Presentation - Delivering Developer Tools at Scale: Microsoft A...
Joe Levy
 
API Description Languages
Akana
 
API Description Languages
Akana
 
Presentation at the 2016 Linux Foundation Collab Summit
Open API Initiative (OAI)
 
Service api design validation & collaboration
Uchit Vyas ☁
 
apidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMG
apidays
 
API Tools.pptx
Subramanian Krishnan
 
apidays LIVE Paris 2021 - Inside API delivery Pipeline, the checklist! - Fran...
apidays
 
API Versioning for Zero Downtime | Devoxx Belgium 2017
Patrice Krakow
 
Delivering Developer Tools at Scale
Oracle Developers
 
Ad

More from Pronovix (20)

PDF
By the time they're reading the docs, it's already too late
Pronovix
 
PPTX
Optimizing Dev Portals with Analytics and Feedback
Pronovix
 
PPTX
Success metrics when launching your first developer portal
Pronovix
 
PDF
Documentation, APIs & AI
Pronovix
 
PDF
Making sense of analytics for documentation pages
Pronovix
 
PPTX
Feedback cycles and their role in improving overall developer experiences
Pronovix
 
PDF
GraphQL Isn't An Excuse To Stop Writing Docs
Pronovix
 
PPTX
API Documentation For Web3
Pronovix
 
PDF
Why your API doesn’t solve my problem: A use case-driven API design
Pronovix
 
PDF
unREST among the docs
Pronovix
 
PDF
Developing a best-in-class deprecation policy for your APIs
Pronovix
 
PDF
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Pronovix
 
PDF
What do developers do when it comes to understanding and using APIs?
Pronovix
 
PDF
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Pronovix
 
PDF
Creating API documentation for international communities
Pronovix
 
PDF
One Developer Portal to Document Them All
Pronovix
 
PDF
Docs-as-Code: Evolving the API Documentation Experience
Pronovix
 
PDF
Developer journey - make it easy for devs to love your product
Pronovix
 
PPTX
Complexity is not complicatedness
Pronovix
 
PDF
How cognitive biases and ranking can foster an ineffective architecture and d...
Pronovix
 
By the time they're reading the docs, it's already too late
Pronovix
 
Optimizing Dev Portals with Analytics and Feedback
Pronovix
 
Success metrics when launching your first developer portal
Pronovix
 
Documentation, APIs & AI
Pronovix
 
Making sense of analytics for documentation pages
Pronovix
 
Feedback cycles and their role in improving overall developer experiences
Pronovix
 
GraphQL Isn't An Excuse To Stop Writing Docs
Pronovix
 
API Documentation For Web3
Pronovix
 
Why your API doesn’t solve my problem: A use case-driven API design
Pronovix
 
unREST among the docs
Pronovix
 
Developing a best-in-class deprecation policy for your APIs
Pronovix
 
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Pronovix
 
What do developers do when it comes to understanding and using APIs?
Pronovix
 
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Pronovix
 
Creating API documentation for international communities
Pronovix
 
One Developer Portal to Document Them All
Pronovix
 
Docs-as-Code: Evolving the API Documentation Experience
Pronovix
 
Developer journey - make it easy for devs to love your product
Pronovix
 
Complexity is not complicatedness
Pronovix
 
How cognitive biases and ranking can foster an ineffective architecture and d...
Pronovix
 
Ad

Recently uploaded (20)

PDF
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
PDF
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PDF
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
PDF
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PPTX
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
PDF
Future-Proof or Fall Behind? 10 Tech Trends You Can’t Afford to Ignore in 2025
DIGITALCONFEX
 
PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PDF
🚀 Let’s Build Our First Slack Workflow! 🔧.pdf
SanjeetMishra29
 
PDF
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
PDF
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
PDF
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
Edge AI and Vision Alliance
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PPTX
Digital Circuits, important subject in CS
contactparinay1
 
PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
Safe Software
 
PPT
Ericsson LTE presentation SEMINAR 2010.ppt
npat3
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
Future-Proof or Fall Behind? 10 Tech Trends You Can’t Afford to Ignore in 2025
DIGITALCONFEX
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
🚀 Let’s Build Our First Slack Workflow! 🔧.pdf
SanjeetMishra29
 
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
Edge AI and Vision Alliance
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
Digital Circuits, important subject in CS
contactparinay1
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
Safe Software
 
Ericsson LTE presentation SEMINAR 2010.ppt
npat3
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 

API First Workflow: How could we have better API Docs through DevOps pipeline

Editor's Notes

  • #3: This is what we’ll talk about today. Very short agenda. We’ll touch *briefly* on what our current process is and the challenges that it brings, and then we’ll levelset on what API First is and how it alleviates those challenges. And then we’ll talk about our Vision of bring API First to SAS from a development perspective.
  • #4: So to start, this is a very simplified diagram of working in a code first basis. It’s a very traditional way of developing. A very siloed way of working, backend developers write the code, and then they throw it over the fence for testers, and somewhere along the way the developers are writing. And then poor Jeannie is left to review the an api she has not business context of. Very siloed, very manual - there’s challenges to that. there are times that are published documentation doesn’t sync with our code / software And finding a design flaw here can be very expensive because the code has already been written This would also bring too much work for the reviewers to review the docs, especially before the release date, If some terrible issues come out which are not suitable for shipment, they will not have enough time to fix them In this climate, this isn’t the most effective way to work. The adapting CI/CD was brought up countless times for many companys, and API First in one of the ways we can work toward that’s.
  • #5: The API First would changes the API developing process form developer led to a product-led, so with API First, instead of the old way where it’s ansynchrounous and siloed, - you have something more like this
  • #6: Instead of silos, you have teams working synchronously. And this is all made possible by starting with a OpenAPI 3.0 Specification. When you start with a spec, you give all these folks a starting point. What you’ll also notice that’s mentioned here but not mentioned in the previous slide, the heavy influence of a product manager. They’re the decision makers and driver here- so moving towards a product led company. They will be involved with the designing of this spec. When you start with design, You make development bend for the design, not design bending for development. What’s really nice about openapi 3.0 spec is that it’s machine readable so that opens us up to many opportunities to automate testing, and documentation, and to some degree code generation. So, we have a few teams that are ahead of curve and already working like this to a degree. it. Of course there isn’t a standard for this so they all kinda went off and did their own thing- And what we’ve done is we collaborated with them and we got their feedback on it so far. And it’s been working really well for them. The testers are happy, the developers are happy. So we studied their process and we evolved it understand what’s working and what’s not- what opensource tools do they like and don’t like. And they gave us a starting point, from there we designed an API First workflow that can be a standard at the company. Before we talk about what that api first process looks like these are the values that we always kept in the back of our minds when creating it.
  • #7: An API process that…. Increase efficiency : more opportunities for teams to work in parallel, also efficient in the sense that if a better api tool comes out tmmrw, it should be easy to switch out tool so a very flexible architecture too. More opportunity for automation: The fact that the spec is machine readable allows us to be able to automate testing, documentation like never before Increase Usability for our end users: putting design first so our apis are trivial to use. Being able to refer to documentation easily to help the customer understand the apis This is our mindset we went in with when we were planning how we want to bring API First into our organization. What we’re going to go through next is that API First workflow that we have envisioned for SAS And this is the design we work towards every day to implement.
  • #9: 1. Since the api specification is both machine readable and human readable, it could be leveraged by api tools for various purpose
  • #10: Right, so this is the people and the process So this is the who and the what. If we direct our eyes to the key, a purple diamond is a human (developer, tester, technical writer), and the square is a robot. Linting- guardrails to ensure their writing an effective spec Mock server: gives the person who writing the spec an idea of how the api would look and feel. They make api calls to this mock server and it actually returns mock data. So you can really get a feel like does the way this api works make sense Testers: a mock server is started for that approved API spec. The testers are notified- hey the mock server is up for the api spec- go test it. What that means is the testers can test the api, and create unit tests for that api before it’s ever even built. So then later, when the api is actually built- they can just use those same test cases for that code Client code is generated: what does it look like to call this api in python Documentation is generated: gives the technical writers a starting point- that generated doc would already have examples in it and what not Server code generated: finally, a boiler plate server code is generated for the developers to extract from and add more meat. We spent a good amount of effort vetting out server generator code tools. And the one we landed on, the idea is that it generates a file of A boiler plate meaning that it takes the functions from the spec and creates the functions signature in go for the developer to add logic to. After the developer adds logic, contract testing happens. Does the code match the contract (the spec) no? developer has to redo logic. Yes? Then it passes and the testers test the code Analytic cloud team was saying that they’ve seen a huge increase in productivity here because the testers can use the same tests they used against the spec, against the code So this workflow is the people and the process, next Yantian is going to talk about the technology. She’s going to talk about our “how we’re bring api first to sas” at a more granular level specifically about the pipeline