SlideShare a Scribd company logo
© 2021 – Phil Wilkins – mp3monster.org
Phil Wilkins
Tech Evangelist & Ace Director
Phil.Wilkins@capgemini.com
uk.linkedin.com/in/philWilkins
@PhilConsultant /
@MP3Monster
Oracle-integration.cloud /
APIPlatform.cloud /
Blog.mp3monster.org
API Design – More than just a
Payload Definition
(2021 Edition)
© 2021 – Phil Wilkins – mp3monster.org
The About Me …
Me in 6:
• Family man, Blogger & Author
• Technical Architect, Tech Evangelist
• Work for Capgemini UK as part of a multi
award winning team
• Work with primarily open source + Oracle
middleware & cloud
• Recognized by Oracle as an Ace Director –
domain knowledge & community contribution
• Know more – mp3monster.org
https://blog.mp3monster.org/
publication-contributions/
https://bit.ly/FluentdBook
https://bit.ly/ImplementingAPI
https://oracle-integration.cloud
© 2021 – Phil Wilkins – mp3monster.org
Capgemini is One of the World's Largest Consulting,
Technology, and Outsourcing Firms & a global “full
service” business transformation provider
Group Workforce: 200,000+ Globally
Asia Pacific
Latin America
Canada
United States
Mexico
Brazil
Argentina
Europe
Morocco
Australia
People’s Republic of China
India
Chile
Guatemala
Russia
Singapore
Hong Kong
North
America
UK & Ireland
Nordics
Benelux
“It is the quality of our people, and their
capacity to deliver fitting solutions, with you
and for you, that drive real business results.”
Across 40+ countries, 100 nationalities
5Businesses
Revenue
12,8
Billion EUR (2017)
Central Europe
Morocco
Net Profit
€1,18B
 Targeting Value
 Mitigating Risk
 Optimising
Capabilities
 Aligning the
Organisation
Elements to
successful
collaboration
Application Services
Infrastructure
Services
Business Process
Outsourcing
Consulting
(Capgemini Consulting)
Local Professional
4
© 2021 – Phil Wilkins – mp3monster.org
APIs, more than a
Payload?
© 2021 – Phil Wilkins – mp3monster.org
Thanks to API Handyman
(Arnaud Lauret)
http://openapi-map.apihandyman.io/
The parts of OAS we focus on when developing an API
© 2021 – Phil Wilkins – mp3monster.org
Thanks to API Handyman
(Arnaud Lauret)
http://openapi-map.apihandyman.io/
The parts of OAS we focus on when developing an API
© 2021 – Phil Wilkins – mp3monster.org
Thanks to API Handyman
(Arnaud Lauret)
http://openapi-map.apihandyman.io/
Extending the schema option to convey extra details
© 2021 – Phil Wilkins – mp3monster.org
Thanks to API Handyman
(Arnaud Lauret)
http://openapi-map.apihandyman.io/
Security controls – not obvious …
© 2021 – Phil Wilkins – mp3monster.org
API Wall for External APIs
Authentication
&
Authorization
SDK
/
Code
Generator
Test
Framework
© 2021 – Phil Wilkins – mp3monster.org
But my API is not for
external use!
© 2021 – Phil Wilkins – mp3monster.org
… will you be supporting your API for
the rest of your career or it’s lifecycle?
What about the impact of an
API Gateway on your API
use?
Internal or External – your API will be looked
at by others
© 2021 – Phil Wilkins – mp3monster.org
Internal API Gateways
We should be considering internal gateways to …
• Enforce rate limiting to avoid possible runway processes swamping you with API calls
• Capture usage data for billing
• Creating points of abstraction
• Gateways can mask changes in deployment for consumers
• Enforce loose coupling – some APIs are intended operational purposes NOT for others to
build new applications against
• Gateway as a focus of security management
• Provide easier points for measuring utilization (investment value)
These points are not easily defined in an API spec …
But can be supported by referenced documentation
© 2021 – Phil Wilkins – mp3monster.org
Supporting Adoption and Change
Every time someone wants to use your API internally, do you want to be receiving over
Slack, Skype, Teams, email random questions about …
• Where do I test my use of your API?
• My call keeps failing – why?
• How do I get credentials to use your API?
• Why can’t I …
All these points are not easily answered in an Open API spec
• We talk about self service in our everyday lives, many of us even prefer it
• Many API Design Tools offer mock endpoints – tell people where it is
• Provide examples – so people can see what will work and why
• Point to the internal process or service for securing access
• You can deliver an SDK to make it easier to use your API faster than anyone else when it
comes to coding – you know the API best
© 2021 – Phil Wilkins – mp3monster.org
API Wall for External APIs
Authentication
&
Authorization
SDK
/
Code
Generator
Test
Framework
© 2021 – Phil Wilkins – mp3monster.org
API Wall for Internal APIs
Legalese
Authentication
&
Authorization
SDK
Test
Framework
© 2021 – Phil Wilkins – mp3monster.org
Still with me ?
Solving the problem …
bi-products & benefits
© 2021 – Phil Wilkins – mp3monster.org
What to do ?
1. Create yourself a checklist like our “wall”, decide what “bricks can help” in a situation
1. As an organization agree common ways of providing the ‘bricks’
2. Use a design tool that provides mock end points & share the links
3. Provide additional docs ..
1. Answer the sort of questions / points discussed, could be simple as Markdown in your
repository
2. Incorporate the doc reference into the API Spec
3. More accessible the supporting content – the better
4. Try to avoid burying answers in big docs
4. Think about what you’d want when trying to use an API, and what if it doesn’t go right
5. If you get asked for the same thing more than a couple of times – address it, own it rather
than problems own you (better than the continued interruptions, debates about
accountability)
© 2021 – Phil Wilkins – mp3monster.org
Feedback
Design
Build Package
& Deploy
Try Continuous
Test
Feedback
Run
Analyse
Feedback
Build Package
& Deploy
Try Continuous
Test
API Provider
API Consumer
API 1st – will help identify what is important and requires
most support / information
Explanation to API first:
https://apievangelist.com/2020/03/09/what-is-api-first/
© 2021 – Phil Wilkins – mp3monster.org
Being the next Elon Musk
Not all of us, have the benefit of working on APIs for those poster
children of the API Economy, But …
APIs done right can…
• See opportunities to expand on current services – offer the
same service in different ways – Walgreens photo printing,
PSD2 Banking (new user experiences)
• People can see the ‘art of the possible’ with your API and realize
new solutions etc
Cloud Elements 2021 State of APIs report
https://offers.cloud-elements.com/2021-state-of-api-integration-report
© 2021 – Phil Wilkins – mp3monster.org
State of API Report 2021
© 2021 – Phil Wilkins – mp3monster.org
Better handle & communication on how your API will
evolve and version
© 2021 – Phil Wilkins – mp3monster.org
Not be the cause of a security issue (or better be the
person who helped prevent one)
A1:2019- Broken
Object Level
Authorization
A2:2017- Broken
Authentication
A3:2019-
Excessive Data
Exposure
A4:2019 - Lack
of Resources &
Rate Limiting
A5:2019-
Broken
Function Level
Authorization
A6:2019- Mass
Assignment
A7:2019 -
Security
Misconfiguration
A8:2019 -
Injection
A10:2019-
Insufficient Logging
& Monitoring
A9:2019- Improper
Assets Management
© 2021 – Phil Wilkins – mp3monster.org
Providing an SDK
Sometimes an SDK may ease adoption for the common ways of using an API…
• Your API may use an approach less commonly used e.g. BSON, gRPC etc – why increase the
learning curve, provide an SDK that makes it easy
• Opportunity to incorporate additional metadata about the use of the API, by allowing the SDK to
capture additional information
• If your API needs metadata to describe the content being communicated, the SDK can determine
this for the consumer
• If you’re APIs have been defined using one of the lesser known notations e.g. YAML, an SDK can
reduce this as a possible barrier
• Making it easier to use your API, particularly for devices & mobile platforms ..
• Coding against a SDK means development or compile time we’re more likely to spot usage
errors (class mismatches etc etc)
• Using dependent libraries is something every developer learns very early on
There are tools that can make this process a lot simpler e.g.
• APIMatic
• APITools
• RESTUnited
• Swagger CodeGen
• AutoRest
Illustration of
beyond the payload
© 2021 – Phil Wilkins – mp3monster.org
Look at Google Maps … as an example of Good API
Provide both APIs and
SDKs to make adoption
easy
© 2021 – Phil Wilkins – mp3monster.org
Understanding the
consuming audience
Giving the bigger
picture
© 2021 – Phil Wilkins – mp3monster.org
Explanation on how the
API use is paid for and
requirements to use
the API
Enabling
self service
© 2021 – Phil Wilkins – mp3monster.org
With more than 190,000 people, Capgemini is present in over 40 countries and
celebrates its 50th Anniversary year in 2018. A global leader in consulting, technology
and outsourcing services, the Group reported 2016 global revenues of EUR 12.5 billion.
Together with its clients, Capgemini creates and delivers business, technology and
digital solutions that fit their needs, enabling them to achieve innovation and
competitiveness. A deeply multicultural organization, Capgemini has developed its own
way of working, the Collaborative Business Experience™, and draws on Rightshore®, its
worldwide delivery model.
About Capgemini
Learn more about us at
www.capgemini.com
This message contains information that may be privileged or confidential and is
the property of the Capgemini Group.
Copyright © 2018 Capgemini. All rights reserved.
Rightshore® is a trademark belonging to Capgemini.
This message is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to
read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please
notify the sender immediately and delete all copies of this message.

More Related Content

PPTX
CNCF Introduction - Feb 2018
PPTX
GitHub Actions - using Free Oracle Cloud Infrastructure (OCI)
PDF
Intro - Cloud Native
PPTX
Meetups - The Oracle Ace Way
PDF
Serverless APIs with Apache OpenWhisk
PDF
Containers vs serverless - Navigating application deployment options
PDF
Developing Serverless Applications on Kubernetes with Knative
PDF
Workshop: Develop Serverless Applications with IBM Cloud Functions
CNCF Introduction - Feb 2018
GitHub Actions - using Free Oracle Cloud Infrastructure (OCI)
Intro - Cloud Native
Meetups - The Oracle Ace Way
Serverless APIs with Apache OpenWhisk
Containers vs serverless - Navigating application deployment options
Developing Serverless Applications on Kubernetes with Knative
Workshop: Develop Serverless Applications with IBM Cloud Functions

What's hot (20)

PDF
Event specifications, state of the serverless landscape, and other news from ...
PDF
Kubernetes, Istio and Knative - noteworthy practical experience
PDF
OpenWhisk - Serverless Architecture
PPT
IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...
PDF
How to develop your first cloud-native Applications with Java
PDF
Using Clocker with Project Calico - Running Production Workloads in the Cloud
PDF
Fully Orchestrating Applications, Microservices and Enterprise Services with ...
PPTX
API more than payload
PDF
Dipping Your Toes Into Cloud Native Application Development
PDF
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
PDF
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
PDF
A Hitchhiker's Guide to Cloud-Native API Gateways
PPTX
Adaptive and Iterative Integration for Microservices and Cloud Native Archite...
PDF
API Microservices with Node.js and Docker
PDF
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
PDF
Toward Hybrid Cloud Serverless Transparency with Lithops Framework
PDF
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
PPTX
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
PDF
ClouNS - A Cloud-native Application Reference Model for Enterprise Architects
PPTX
Domain-driven Design
Event specifications, state of the serverless landscape, and other news from ...
Kubernetes, Istio and Knative - noteworthy practical experience
OpenWhisk - Serverless Architecture
IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...
How to develop your first cloud-native Applications with Java
Using Clocker with Project Calico - Running Production Workloads in the Cloud
Fully Orchestrating Applications, Microservices and Enterprise Services with ...
API more than payload
Dipping Your Toes Into Cloud Native Application Development
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
A Hitchhiker's Guide to Cloud-Native API Gateways
Adaptive and Iterative Integration for Microservices and Cloud Native Archite...
API Microservices with Node.js and Docker
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Toward Hybrid Cloud Serverless Transparency with Lithops Framework
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
ClouNS - A Cloud-native Application Reference Model for Enterprise Architects
Domain-driven Design
Ad

Similar to Api more than payload (2021 Update) (20)

PPTX
API Design – More than just a Payload Definition
PPTX
API Adoption Patterns in Banking & The Promise of Microservices
PDF
API and App Ecosystems - Build The Best: a deep dive
PPTX
apidays LIVE Paris 2021 - APIs - How did we get here and where are we going n...
PPTX
Oracle OCI APIs and SDK
PPTX
2022 APIsecure_From Shift Left to Full Circle - A Pragmatic Approach to Catch...
PPTX
Unlocking the ROI of API Platforms: What Success Actually Looks Like - Budhad...
PPTX
OracleDeveloperMeetup - London 19-12-17
PPTX
EasyStack True Private Cloud | Quek Keng Oei
PPTX
Apiary - A Developers Perspective
PDF
Introduction to (web) APIs - definitions, examples, concepts and trends
PPTX
Taming the FHIR of Healthcare with IBM's API Connect
PDF
Api management customer
PPTX
Freelancer profile / Pasi Vuorio
PDF
WSO2 API Day Toronto 2019 API-driven World
PPTX
apidays LIVE New York 2021 - API Automation For DevOps at Scale by Rod Cope, ...
PPTX
Platform for Secure Digital Business
PDF
May Partner Bootcamp 2022
PPTX
API Platform Cloud Service best practice - OOW17
PPTX
Best Practices for API Adoption - WIP Factory presentation for AnyPresence we...
API Design – More than just a Payload Definition
API Adoption Patterns in Banking & The Promise of Microservices
API and App Ecosystems - Build The Best: a deep dive
apidays LIVE Paris 2021 - APIs - How did we get here and where are we going n...
Oracle OCI APIs and SDK
2022 APIsecure_From Shift Left to Full Circle - A Pragmatic Approach to Catch...
Unlocking the ROI of API Platforms: What Success Actually Looks Like - Budhad...
OracleDeveloperMeetup - London 19-12-17
EasyStack True Private Cloud | Quek Keng Oei
Apiary - A Developers Perspective
Introduction to (web) APIs - definitions, examples, concepts and trends
Taming the FHIR of Healthcare with IBM's API Connect
Api management customer
Freelancer profile / Pasi Vuorio
WSO2 API Day Toronto 2019 API-driven World
apidays LIVE New York 2021 - API Automation For DevOps at Scale by Rod Cope, ...
Platform for Secure Digital Business
May Partner Bootcamp 2022
API Platform Cloud Service best practice - OOW17
Best Practices for API Adoption - WIP Factory presentation for AnyPresence we...
Ad

More from Phil Wilkins (20)

PPTX
Is 12 Factor App Right About Logging
PPTX
APIs, STOP Polling, lets go Streaming
PPTX
Fluentd – Making Logging Easy & Effective in a Multi-cloud & Hybrid Environme...
PPTX
How fluentd fits into the modern software landscape
PPTX
gRPC, GraphQL, REST - Which API Tech to use - API Conference Berlin oct 20
PPTX
FluentD for end to end monitoring
PPTX
Secrets of Custom API Policies on the Oracle API Platform
PPTX
Terraform
PPTX
Oracle London Developer Meetup November 2018
PPTX
London Oracle Developer Meetup - June 18 - Drones with APIs
PPTX
London Oracle Developer Meetup April 18
PPTX
Oracle Developer Meetup March 2018
PPTX
Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...
PPTX
Oracle integration cloud service (ICS) best practices learned from the field ...
PPTX
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...
PPTX
UKOUG Journey To The Cloud - March 2017
PPTX
Some OOW15 Observations
PPTX
Enabling application architecture capacity through offshore si engagement
PPTX
Oracle SOA, AIA & Fusion Apps
PPTX
An approach to making it easer to work in a license constrained world
Is 12 Factor App Right About Logging
APIs, STOP Polling, lets go Streaming
Fluentd – Making Logging Easy & Effective in a Multi-cloud & Hybrid Environme...
How fluentd fits into the modern software landscape
gRPC, GraphQL, REST - Which API Tech to use - API Conference Berlin oct 20
FluentD for end to end monitoring
Secrets of Custom API Policies on the Oracle API Platform
Terraform
Oracle London Developer Meetup November 2018
London Oracle Developer Meetup - June 18 - Drones with APIs
London Oracle Developer Meetup April 18
Oracle Developer Meetup March 2018
Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...
Oracle integration cloud service (ICS) best practices learned from the field ...
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...
UKOUG Journey To The Cloud - March 2017
Some OOW15 Observations
Enabling application architecture capacity through offshore si engagement
Oracle SOA, AIA & Fusion Apps
An approach to making it easer to work in a license constrained world

Recently uploaded (20)

PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PPTX
Introduction to Artificial Intelligence
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Complete React Javascript Course Syllabus.pdf
PPTX
Materi_Pemrograman_Komputer-Looping.pptx
DOCX
The Five Best AI Cover Tools in 2025.docx
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
medical staffing services at VALiNTRY
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
history of c programming in notes for students .pptx
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
Transform Your Business with a Software ERP System
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Introduction to Artificial Intelligence
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Understanding Forklifts - TECH EHS Solution
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Complete React Javascript Course Syllabus.pdf
Materi_Pemrograman_Komputer-Looping.pptx
The Five Best AI Cover Tools in 2025.docx
VVF-Customer-Presentation2025-Ver1.9.pptx
Design an Analysis of Algorithms II-SECS-1021-03
Adobe Illustrator 28.6 Crack My Vision of Vector Design
medical staffing services at VALiNTRY
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
history of c programming in notes for students .pptx
2025 Textile ERP Trends: SAP, Odoo & Oracle
Transform Your Business with a Software ERP System
ManageIQ - Sprint 268 Review - Slide Deck

Api more than payload (2021 Update)

  • 1. © 2021 – Phil Wilkins – mp3monster.org Phil Wilkins Tech Evangelist & Ace Director Phil.Wilkins@capgemini.com uk.linkedin.com/in/philWilkins @PhilConsultant / @MP3Monster Oracle-integration.cloud / APIPlatform.cloud / Blog.mp3monster.org API Design – More than just a Payload Definition (2021 Edition)
  • 2. © 2021 – Phil Wilkins – mp3monster.org The About Me … Me in 6: • Family man, Blogger & Author • Technical Architect, Tech Evangelist • Work for Capgemini UK as part of a multi award winning team • Work with primarily open source + Oracle middleware & cloud • Recognized by Oracle as an Ace Director – domain knowledge & community contribution • Know more – mp3monster.org https://blog.mp3monster.org/ publication-contributions/ https://bit.ly/FluentdBook https://bit.ly/ImplementingAPI https://oracle-integration.cloud
  • 3. © 2021 – Phil Wilkins – mp3monster.org Capgemini is One of the World's Largest Consulting, Technology, and Outsourcing Firms & a global “full service” business transformation provider Group Workforce: 200,000+ Globally Asia Pacific Latin America Canada United States Mexico Brazil Argentina Europe Morocco Australia People’s Republic of China India Chile Guatemala Russia Singapore Hong Kong North America UK & Ireland Nordics Benelux “It is the quality of our people, and their capacity to deliver fitting solutions, with you and for you, that drive real business results.” Across 40+ countries, 100 nationalities 5Businesses Revenue 12,8 Billion EUR (2017) Central Europe Morocco Net Profit €1,18B  Targeting Value  Mitigating Risk  Optimising Capabilities  Aligning the Organisation Elements to successful collaboration Application Services Infrastructure Services Business Process Outsourcing Consulting (Capgemini Consulting) Local Professional 4
  • 4. © 2021 – Phil Wilkins – mp3monster.org APIs, more than a Payload?
  • 5. © 2021 – Phil Wilkins – mp3monster.org Thanks to API Handyman (Arnaud Lauret) http://openapi-map.apihandyman.io/ The parts of OAS we focus on when developing an API
  • 6. © 2021 – Phil Wilkins – mp3monster.org Thanks to API Handyman (Arnaud Lauret) http://openapi-map.apihandyman.io/ The parts of OAS we focus on when developing an API
  • 7. © 2021 – Phil Wilkins – mp3monster.org Thanks to API Handyman (Arnaud Lauret) http://openapi-map.apihandyman.io/ Extending the schema option to convey extra details
  • 8. © 2021 – Phil Wilkins – mp3monster.org Thanks to API Handyman (Arnaud Lauret) http://openapi-map.apihandyman.io/ Security controls – not obvious …
  • 9. © 2021 – Phil Wilkins – mp3monster.org API Wall for External APIs Authentication & Authorization SDK / Code Generator Test Framework
  • 10. © 2021 – Phil Wilkins – mp3monster.org But my API is not for external use!
  • 11. © 2021 – Phil Wilkins – mp3monster.org … will you be supporting your API for the rest of your career or it’s lifecycle? What about the impact of an API Gateway on your API use? Internal or External – your API will be looked at by others
  • 12. © 2021 – Phil Wilkins – mp3monster.org Internal API Gateways We should be considering internal gateways to … • Enforce rate limiting to avoid possible runway processes swamping you with API calls • Capture usage data for billing • Creating points of abstraction • Gateways can mask changes in deployment for consumers • Enforce loose coupling – some APIs are intended operational purposes NOT for others to build new applications against • Gateway as a focus of security management • Provide easier points for measuring utilization (investment value) These points are not easily defined in an API spec … But can be supported by referenced documentation
  • 13. © 2021 – Phil Wilkins – mp3monster.org Supporting Adoption and Change Every time someone wants to use your API internally, do you want to be receiving over Slack, Skype, Teams, email random questions about … • Where do I test my use of your API? • My call keeps failing – why? • How do I get credentials to use your API? • Why can’t I … All these points are not easily answered in an Open API spec • We talk about self service in our everyday lives, many of us even prefer it • Many API Design Tools offer mock endpoints – tell people where it is • Provide examples – so people can see what will work and why • Point to the internal process or service for securing access • You can deliver an SDK to make it easier to use your API faster than anyone else when it comes to coding – you know the API best
  • 14. © 2021 – Phil Wilkins – mp3monster.org API Wall for External APIs Authentication & Authorization SDK / Code Generator Test Framework
  • 15. © 2021 – Phil Wilkins – mp3monster.org API Wall for Internal APIs Legalese Authentication & Authorization SDK Test Framework
  • 16. © 2021 – Phil Wilkins – mp3monster.org Still with me ? Solving the problem … bi-products & benefits
  • 17. © 2021 – Phil Wilkins – mp3monster.org What to do ? 1. Create yourself a checklist like our “wall”, decide what “bricks can help” in a situation 1. As an organization agree common ways of providing the ‘bricks’ 2. Use a design tool that provides mock end points & share the links 3. Provide additional docs .. 1. Answer the sort of questions / points discussed, could be simple as Markdown in your repository 2. Incorporate the doc reference into the API Spec 3. More accessible the supporting content – the better 4. Try to avoid burying answers in big docs 4. Think about what you’d want when trying to use an API, and what if it doesn’t go right 5. If you get asked for the same thing more than a couple of times – address it, own it rather than problems own you (better than the continued interruptions, debates about accountability)
  • 18. © 2021 – Phil Wilkins – mp3monster.org Feedback Design Build Package & Deploy Try Continuous Test Feedback Run Analyse Feedback Build Package & Deploy Try Continuous Test API Provider API Consumer API 1st – will help identify what is important and requires most support / information Explanation to API first: https://apievangelist.com/2020/03/09/what-is-api-first/
  • 19. © 2021 – Phil Wilkins – mp3monster.org Being the next Elon Musk Not all of us, have the benefit of working on APIs for those poster children of the API Economy, But … APIs done right can… • See opportunities to expand on current services – offer the same service in different ways – Walgreens photo printing, PSD2 Banking (new user experiences) • People can see the ‘art of the possible’ with your API and realize new solutions etc Cloud Elements 2021 State of APIs report https://offers.cloud-elements.com/2021-state-of-api-integration-report
  • 20. © 2021 – Phil Wilkins – mp3monster.org State of API Report 2021
  • 21. © 2021 – Phil Wilkins – mp3monster.org Better handle & communication on how your API will evolve and version
  • 22. © 2021 – Phil Wilkins – mp3monster.org Not be the cause of a security issue (or better be the person who helped prevent one) A1:2019- Broken Object Level Authorization A2:2017- Broken Authentication A3:2019- Excessive Data Exposure A4:2019 - Lack of Resources & Rate Limiting A5:2019- Broken Function Level Authorization A6:2019- Mass Assignment A7:2019 - Security Misconfiguration A8:2019 - Injection A10:2019- Insufficient Logging & Monitoring A9:2019- Improper Assets Management
  • 23. © 2021 – Phil Wilkins – mp3monster.org Providing an SDK Sometimes an SDK may ease adoption for the common ways of using an API… • Your API may use an approach less commonly used e.g. BSON, gRPC etc – why increase the learning curve, provide an SDK that makes it easy • Opportunity to incorporate additional metadata about the use of the API, by allowing the SDK to capture additional information • If your API needs metadata to describe the content being communicated, the SDK can determine this for the consumer • If you’re APIs have been defined using one of the lesser known notations e.g. YAML, an SDK can reduce this as a possible barrier • Making it easier to use your API, particularly for devices & mobile platforms .. • Coding against a SDK means development or compile time we’re more likely to spot usage errors (class mismatches etc etc) • Using dependent libraries is something every developer learns very early on There are tools that can make this process a lot simpler e.g. • APIMatic • APITools • RESTUnited • Swagger CodeGen • AutoRest
  • 25. © 2021 – Phil Wilkins – mp3monster.org Look at Google Maps … as an example of Good API Provide both APIs and SDKs to make adoption easy
  • 26. © 2021 – Phil Wilkins – mp3monster.org Understanding the consuming audience Giving the bigger picture
  • 27. © 2021 – Phil Wilkins – mp3monster.org Explanation on how the API use is paid for and requirements to use the API Enabling self service
  • 28. © 2021 – Phil Wilkins – mp3monster.org
  • 29. With more than 190,000 people, Capgemini is present in over 40 countries and celebrates its 50th Anniversary year in 2018. A global leader in consulting, technology and outsourcing services, the Group reported 2016 global revenues of EUR 12.5 billion. Together with its clients, Capgemini creates and delivers business, technology and digital solutions that fit their needs, enabling them to achieve innovation and competitiveness. A deeply multicultural organization, Capgemini has developed its own way of working, the Collaborative Business Experience™, and draws on Rightshore®, its worldwide delivery model. About Capgemini Learn more about us at www.capgemini.com This message contains information that may be privileged or confidential and is the property of the Capgemini Group. Copyright © 2018 Capgemini. All rights reserved. Rightshore® is a trademark belonging to Capgemini. This message is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.

Editor's Notes

  • #7: Who uses the external docs attribute that exists in each of the HTTP verbs? Terms of ~Service in the info block ? Did you know that security is at the API route and linked to each path’s verbs? How often do you see the use of the x- property? https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/ghes-2.22/ghes-2.22.yaml
  • #9: Terms of Service – its just a URL. Recognition you might to provide this – but it points us out of the API definition
  • #12: - A simpler view like this simpler prompt - Have the chance of a good external API, we need address these bricks – miss breaks, less likely to succeed
  • #15: API gateways don’t have to be
  • #17: Have the chance of a good external API, we need address these bricks – miss breaks, less likely to succeed
  • #21: The API 1st design process likely to draw out the non payload questions e.G internal API using Oauth against corporate IDAM solution – nothing more needed. But delegated Asuth to partners’ IDAM – that needs a lot more detail
  • #23: Clips from - APIs Arent Just for Tech Companies – HBR - https://hbr.org/2021/04/apis-arent-just-for-tech-companies - API management, now a business-critical capability – IT Pro Portal - https://www.itproportal.com/features/api-management-now-a-business-critical-capability/ How API economy is powering digital transformation – Venture Beat - https://venturebeat.com/2021/05/17/how-the-api-economy-is-powering-digital-transformation/#:~:text=%E2%80%9CAPIs%20allow%20businesses%20to%20more,retention%2C%E2%80%9D%20Polyakov%20told%20VentureBeat. 2020 Study: 83% find API Integration ‘Critical’ to Business Strategy – Globe Newswire - https://www.globenewswire.com/news-release/2020/04/14/2015763/0/en/2020-Study-83-find-API-Integration-Critical-to-Business-Strategy.html The seven make-or-break API challenges CIOs need to address – McKinsey Digital - https://www.mckinsey.com/business-functions/mckinsey-digital/our-insights/the-seven-make-or-break-api-challenges-cios-need-to-address 90 percent of executives say ‘APIs are mission critical’: What CEOs should know – Health Evolution - https://www.healthevolution.com/insider/90-percent-of-executives-say-apis-are-mission-critical-what-ceos-should-know/ Why have Open APIs become business critical to the CSPs future? - https://www.neuralt.com/wp-content/uploads/2021/01/Open-API-Critical-to-Future-of-CSPs-1.pdf
  • #25: By versioning we can manage change. But how to version? If you were to ask Roy Fielding, ‘father’ of REST, he may tell you not to version your API at all Semantic Versioning (semver.org) ? What ever answer you choose, be consistent, be clear & be understood!! Common options … URL & Domain Versioning Query Parameter use Header Attribute Accepts Header Attribute Versioning the Payload Non-breaking evolution
  • #26: - None of these issues are directly linked to the payload design. - The issues are linked those things we setup around our API - Thinking bigger than payload reminds up to address these factors
  • #27: Developing the SDK can save others time. Helps you with ensuring your API is easy to consume