SlideShare a Scribd company logo
Beyond REST: Moving to
Event-Based APIs and Streaming
GlueCon 2019
James Higginbotham
james@launchany.com
@launchany
2@launchany
Introduction
• Executive API Consultant
• API architecture, strategy,
and design
• Based in Colorado Springs
• Across multiple verticals:
– Commercial Insurance
– Healthcare
– Hospitality
– Finance and Banking
– Travel
– Airline
3@launchany
Tracing the Evolution of REST APIs
Photo by Jason Leung on Unsplash
4@launchany
APIs Solve a Variety of Use Cases
Customer
Experience
Worker
Experience
Supplier/Partner
Experience
Integration Utility
5@launchany
API Design is an architectural
concern that combines
business, product design, and
software engineering
6@launchany
REST APIs are stuck in the land of CRUD
7@launchany
?
Roy Fielding’s Warning
“The REST interface is designed to be
efficient for large grain hypermedia data
transfer, optimizing for the common
case of the Web, but resulting in an
interface that is not optimal for other
forms of architectural interaction.”
- Roy Fielding
- https://www.ics.uci.edu/~fielding/pubs/dissertation/software_arch.htm#sec_1_5
8@launchany
APIs Require Different Interaction Styles
Request/
Response
Request/
Acknowledge
Batch-Based
Publish/
Subscribe
Message
Streaming
9@launchany
Styles of API Eventing and Streaming
Photo by Andrew Ridley on Unsplash
10@launchany
Messaging and Streaming Infrastructure
11@launchany
Queues and Topics
Point-to-Point Messaging
via Queues
Fanout (Pub/Sub)
via Topics
Component
MessageBroker
Component
Publisher
MessageBroker
Subscriber
Subscriber
Subscriber
Component
Message B
Message A
Message A
Message B
Message A
Message A
Message A
Message A
12@launchany
Messaging Infrastructure
13@launchany
Messaging and Streaming Infrastructure
14@launchany
Distributed Logs
Topic A
Record1
Record2
Record3
Record4
Record5
Record6
Record7
Record8
Record9
Record10
Consumer BConsumer A
15@launchany
Streaming Infrastructure
16@launchany
From API Polling to API Eventing
https://streamdata.io
17@launchany
API Eventing and Streaming Styles
18@launchany
GraphQL Subscriptions
Source: https://graphql.github.io/graphql-spec/June2018/#sec-Subscription
19@launchany
API Eventing and Streaming Styles
20@launchany
gRPC Client and Server Streaming
Source: https://grpc.io/docs/tutorials/basic/python.html#bidirectional-streaming-rpc
21@launchany
API Eventing and Streaming Styles
22@launchany
Server-Sent Events (SSE)
Source: https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events
23@launchany
API Eventing and Streaming Styles
24@launchany
Websockets
Source: http://apress.jensimmons.com/v5/pro-html5-programming/ch7.html
25@launchany
Websocket Subprotocols
Source: https://www.iana.org/assignments/websocket/websocket.xml
26@launchany
API Eventing and Streaming Styles
27@launchany
Webhooks for HTTP POST Callbacks
28@launchany
Resthooks.org
29@launchany
Opportunity #1:
Events and Streams Create Innovation
Photo by Diego PH on Unsplash
30@launchany
GitHub: Creating a CI/CD Marketplace
Source: https://github.com/launchany/event-hub/settings/hooks/new
31@launchany
Opportunity #2:
Events and Streams Enable Collaboration
Photo by Matteo Vistocco on Unsplash
When APIs Meet Jobs-To-Be-Done
{
…
"_links": {
“self": {"href": "/approval-requests/d796f2d0eb72492bb088"},
“approve": {"href": "/approval-requests/d796f2d0eb72492bb088/approve"},
“decline": {"href": "/approval-requests/d796f2d0eb72492bb088/decline"},
},
…
}
{
"event": {
"type": "approved",
…
}
}
33@launchany
Messaging Platform Events
34@launchany
Bi-directional Webhooks
Webhook
Dispatcher
Workflow
Engine
Messaging
App
Webhook
Receiver
Webhook
Receiver
Webhook
Dispatcher
HTTP POST /hooks/messages
HTTP POST /hooks/workflow
{
“lastState”: “review”,
“newState”: “approved”,
“workflowId” : …
}
{
“message”: “Can you please review?”,
“link”: “/articles/12345”,
“workflowId” : …
}
Ash: “Can you please review?”
Julie: Approved
35@launchany
Opportunity #3:
Events and Streams Operationalize Data
Photo by Mika Baumeister on Unsplash
36@launchany
Today’s Data Pipeline: From ETL to ELQT
37@launchany
Evolving Your Software Architecture
Photo by Ashkan Forouzani on Unsplash
38@launchany
APIs Often Start Simple
39@launchany
Capabilities and Outcomes First, API Design Next
• Track a project from start to completion
• Subdivide a project into tasks
• Mark tasks as completed
• View incomplete tasks
• View active projects
• View archived projects
• Add collaborators to a project
• POST /projects
• POST /projects/{projectId}/tasks
• POST /projects/{projectId}/tasks /{taskId}/complete
• GET /tasks?status=incomplete
• GET /projects?status=active
• GET /projects?status=archived
• POST /projects/{projectId}/members
40@launchany
As the Organization Grows, Complexity Increases
41@launchany
The Journey Toward an Enterprise API Platform
Offers API
Inventory API
Orders API
Identity API
Accounts API
Rewards API
Partners
Internal
Developers
Public App
Developers
Customers
Third-party
Approved Apps
Redeem Svc
Register Svc
Avail Offers Svc
Check Inv Svc
Ship Receive Svc
Create Order Svc
Order History Svc
Profile Svc
Permissions Svc
Friends n Fam Svc
Redemption Stream
New Acct Stream
Inv Low Stream
Order Proc Stream
42@launchany
The Evolving Enterprise Platform
43@launchany
Move Your Platform Beyond Request-Response APIs
• APIs deliver capabilities through commands and queries
• Events and streaming provide extensibility
• Discovery via OpenAPI Spec + AsyncAPI (https://asyncapi.com)
• Function-as-a-Service (FaaS) and iPaaS are the integration glue
Rewards API
Redeem Svc
Register Svc
Redemption Stream
Redemption Event
onRedemptionEvent()
APIs Capabilities
(Services)
Streaming
& Eventing
Functions-as-a-Service
& Stream Processors
Redemption Processor
44@launchany
AsyncAPI: Eventing and Streaming Discovery
45@launchany
Describing Streaming Data Using AsyncAPI (w/ Apache Avro)
46@launchany
https://launchany.com/canvas
Introducing the Microservice Design Canvas v2
47@launchany
Microservice Design Card v2
https://launchany.com/canvas
48@launchany
Toward a Future of Faster Integration
Photo by Dlanor S on Unsplash
49@launchany
GitHub Actions: Eventing Meets Serverless
Source: https://github.com/stefanprodan/gh-actions-demo
50@launchany
The History of Low Code/No Code
Source: https://www.youtube.com/watch?v=I5WEH8jh8Hk
Client-Server SOA/SOAP
51@launchany
The Future is API Integration (again)
52@launchany
James Higginbotham
james@launchany.com
@launchany
https://launchany.com/canvas
https://apideveloperweekly.com

More Related Content

PDF
An Introduction to Generative AI
PPTX
Designing APIs and Microservices Using Domain-Driven Design
PDF
Docsumo Invoice Automation Guide
PDF
Apache Kafka Streams + Machine Learning / Deep Learning
PDF
Database migration
PDF
Orchestrator - Practical Approach to host UiPath Orchestrator
PDF
Building the Foundations of an Intelligent, Event-Driven Data Platform at EFSA
PDF
Changelog Stream Processing with Apache Flink
An Introduction to Generative AI
Designing APIs and Microservices Using Domain-Driven Design
Docsumo Invoice Automation Guide
Apache Kafka Streams + Machine Learning / Deep Learning
Database migration
Orchestrator - Practical Approach to host UiPath Orchestrator
Building the Foundations of an Intelligent, Event-Driven Data Platform at EFSA
Changelog Stream Processing with Apache Flink

What's hot (20)

PPTX
Azure Boards.pptx
PPTX
API Security Fundamentals
PPTX
Applying Domain-Driven Design to APIs and Microservices - Austin API Meetup
PDF
API Business Models
PDF
Opentracing jaeger
PDF
Intro To Observability-March-2023.pdf
PDF
Generative AI for the rest of us
PDF
0-60: Tesla's Streaming Data Platform ( Jesse Yates, Tesla) Kafka Summit SF 2019
PDF
Cassandra serving netflix @ scale
PDF
Combining logs, metrics, and traces for unified observability
PDF
Exactly-Once Semantics Revisited: Distributed Transactions across Flink and K...
PPTX
Lecture 05 - Prompt Engineering.pptx
PDF
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
PDF
Apache Kafka for Automotive Industry, Mobility Services & Smart City
PDF
A Thorough Comparison of Delta Lake, Iceberg and Hudi
PDF
Introduction to AI/ML with AWS
PPTX
AI Builder Deep Dive
PDF
Build an LLM-powered application using LangChain.pdf
PDF
Real-Life Use Cases & Architectures for Event Streaming with Apache Kafka
PDF
Introduction To Kibana
Azure Boards.pptx
API Security Fundamentals
Applying Domain-Driven Design to APIs and Microservices - Austin API Meetup
API Business Models
Opentracing jaeger
Intro To Observability-March-2023.pdf
Generative AI for the rest of us
0-60: Tesla's Streaming Data Platform ( Jesse Yates, Tesla) Kafka Summit SF 2019
Cassandra serving netflix @ scale
Combining logs, metrics, and traces for unified observability
Exactly-Once Semantics Revisited: Distributed Transactions across Flink and K...
Lecture 05 - Prompt Engineering.pptx
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Apache Kafka for Automotive Industry, Mobility Services & Smart City
A Thorough Comparison of Delta Lake, Iceberg and Hudi
Introduction to AI/ML with AWS
AI Builder Deep Dive
Build an LLM-powered application using LangChain.pdf
Real-Life Use Cases & Architectures for Event Streaming with Apache Kafka
Introduction To Kibana
Ad

Similar to GlueCon 2019: Beyond REST - Moving to Event-Based APIs and Streaming (20)

PDF
Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...
PDF
INTERFACE by apidays 2023 - Refining Your API: The Last Mile of API Design, J...
PDF
Apply API Governance to RESTful Service APIs using WSO2 Governance Registry a...
PDF
REST API Recommendations
PPTX
Event mesh APIDays melbourne September 2019
PDF
Rest api best practices – comprehensive handbook
PDF
APIStrat Keynote: Lessons in Transforming the Enterprise to an API Platform
PDF
Event-based API Patterns and Practices - AsyncAPI Online Conference
PDF
Designing Usable APIs featuring Forrester Research, Inc.
PPTX
Hypermedia APIs: The Rest of REST
PPTX
Http and REST APIs.
PPTX
REST & RESTful APIs: The State of Confusion
PPTX
apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...
PDF
OutSystsems User Group Netherlands September 2024.pdf
PDF
Why your APIs should fly first class
PPTX
JAX-RS. Developing RESTful APIs with Java
PDF
MuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
PDF
Be My API How to Implement an API Strategy Everyone will Love
PDF
APIs : Mapping the way
PDF
A Snapshot of API Design Trends In 2019
Austin API Summit 2019 - APIs, Microservices, and Serverless: The Shape of Th...
INTERFACE by apidays 2023 - Refining Your API: The Last Mile of API Design, J...
Apply API Governance to RESTful Service APIs using WSO2 Governance Registry a...
REST API Recommendations
Event mesh APIDays melbourne September 2019
Rest api best practices – comprehensive handbook
APIStrat Keynote: Lessons in Transforming the Enterprise to an API Platform
Event-based API Patterns and Practices - AsyncAPI Online Conference
Designing Usable APIs featuring Forrester Research, Inc.
Hypermedia APIs: The Rest of REST
Http and REST APIs.
REST & RESTful APIs: The State of Confusion
apidays New York 2025 - API Platform Survival Guide by James Higginbotham (La...
OutSystsems User Group Netherlands September 2024.pdf
Why your APIs should fly first class
JAX-RS. Developing RESTful APIs with Java
MuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
Be My API How to Implement an API Strategy Everyone will Love
APIs : Mapping the way
A Snapshot of API Design Trends In 2019
Ad

More from LaunchAny (20)

PPTX
Refining Your API Design - Architecture and Modeling Learning Event
PPTX
Event-Based API Patterns and Practices
PPTX
Austin API Summit 2018: Are REST APIs Still Relevant Today?
PDF
GlueCon 2018: Are REST APIs Still Relevant Today?
PPTX
Lessons in Transforming the Enterprise to an API Platform
PPTX
APIStrat 2017: API Design in the Age of Bots, IoT, and Voice
PDF
API Design in the Age of Bots, IoT, and Voice
PDF
APIStrat 2016: Moving Toward a Modular Enterprise
PDF
API:World 2016 - Applying Domain Driven Design to APIs and Microservices
PPTX
Moving Toward a Modular Enterprise - All About the API Conference 2016
PDF
APIs Are Forever - How to Design Long-Lasting APIs
PDF
API Thinking - How to Design APIs Through Systems Design
PDF
Swagger 2.0: Latest and Greatest
PDF
Gluecon 2015 Recap
PDF
Using Sinatra to Build REST APIs in Ruby
PPTX
Microservices on the Edge
PPTX
How to Design and Build a Great Web API
PPTX
Moving From API Design to Deployment
PPTX
5 Ways to Build Better Web APIs with Ruby and Rails
PPTX
Getting Started with Heroku
Refining Your API Design - Architecture and Modeling Learning Event
Event-Based API Patterns and Practices
Austin API Summit 2018: Are REST APIs Still Relevant Today?
GlueCon 2018: Are REST APIs Still Relevant Today?
Lessons in Transforming the Enterprise to an API Platform
APIStrat 2017: API Design in the Age of Bots, IoT, and Voice
API Design in the Age of Bots, IoT, and Voice
APIStrat 2016: Moving Toward a Modular Enterprise
API:World 2016 - Applying Domain Driven Design to APIs and Microservices
Moving Toward a Modular Enterprise - All About the API Conference 2016
APIs Are Forever - How to Design Long-Lasting APIs
API Thinking - How to Design APIs Through Systems Design
Swagger 2.0: Latest and Greatest
Gluecon 2015 Recap
Using Sinatra to Build REST APIs in Ruby
Microservices on the Edge
How to Design and Build a Great Web API
Moving From API Design to Deployment
5 Ways to Build Better Web APIs with Ruby and Rails
Getting Started with Heroku

Recently uploaded (20)

PDF
AI in Product Development-omnex systems
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
ai tools demonstartion for schools and inter college
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
medical staffing services at VALiNTRY
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
L1 - Introduction to python Backend.pptx
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
top salesforce developer skills in 2025.pdf
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
AI in Product Development-omnex systems
Reimagine Home Health with the Power of Agentic AI​
2025 Textile ERP Trends: SAP, Odoo & Oracle
How to Migrate SBCGlobal Email to Yahoo Easily
Odoo POS Development Services by CandidRoot Solutions
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
ai tools demonstartion for schools and inter college
PTS Company Brochure 2025 (1).pdf.......
Navsoft: AI-Powered Business Solutions & Custom Software Development
medical staffing services at VALiNTRY
VVF-Customer-Presentation2025-Ver1.9.pptx
Which alternative to Crystal Reports is best for small or large businesses.pdf
Design an Analysis of Algorithms I-SECS-1021-03
Design an Analysis of Algorithms II-SECS-1021-03
L1 - Introduction to python Backend.pptx
CHAPTER 2 - PM Management and IT Context
How to Choose the Right IT Partner for Your Business in Malaysia
top salesforce developer skills in 2025.pdf
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...

GlueCon 2019: Beyond REST - Moving to Event-Based APIs and Streaming