Upgrade to Pro — share decks privately, control downloads, hide ads and more …

API Development: Evolving Prospects and Future ...

Daniel Kocot
May 13, 2024
75

API Development: Evolving Prospects and Future Outlook

Daniel Kocot

May 13, 2024

Transcript

  1. codecentric AG Hoher Wall 15 44137 Dortmund Telefon: +49 (0)

    151. 10 86 70 74 Daniel Kocot Head of APIConsulting AsyncAPI Ambassador Team Topologies Ambassador [email protected] https:/ /www.codecentric.de/standorte/dortmund/dortmund-tea m#daniel-kocot https:/ /danielkocot.github.io Innovative - Trustful - Competent - Pragmatic 2
  2. Why do organisations invest in API development? 14 Costs, turnover,

    growth Automation, Better time to market Added value from data Regulation Benefiting from new technologies
  3. API first 18 PRIORITISING APIS WITHIN THE ORGANISATION APIS BECOME

    A MAIN PART OF THE BUSINESS MODEL OF THE ORGANISATION API FIRST IS NOT A PARADIGM FOR YOUR DEVELOPMENT TEAM!
  4. Definition 20 VALUE PROPOSITION ANALYTICS AND MAYBE SOME KIND OF

    MONETISATION OWNERSHIP AND LIFECYCLE MANAGEMENT DOCUMENTATION AND DEVELOPER EXPERIENCE
  5. APIs are not the panacea 22 In some situations they

    are not the best fit Security Dependencies Complexity
  6. Data Integration 27 DISTRIBUTION OF DATA BETWEEN DATA STORES EXTRACT,

    TRANSFORM, LOAD (ETL) CHANGE DATA CAPTURE(CDC)
  7. There are two questions to answer. 54 WHO IS INTERESTED

    IN ACCESSING THE DATA? WHY DO THEY WANT TO ACCESS DATA?
  8. API Development API Thinking 58 Empathise with stakeholders Data definition

    API definition API endpoint and backend implementation Test by stakeholders
  9. Definition 68 Different API interaction patterns exist to accommodate various

    use cases, requirements, and preferences of API consumers. These pattern provide different ways for clients to interact with APIs and can be chosen based on factors such as the nature of the application the desidered level of control and flexibility, and the specific goals of the API design
  10. Resource / Hypermedia 70 EXECUTE A SPECIFIED SET OF METHODS

    ON REMOTE RESOURCES. HTTP, ODATA, GRPC
  11. Tunnel 71 CALL A PROCEDURE/COMMAND ON A REMOTE SERVER AS

    YOU WOULD LOCALLY CALL A FUNCTION IN YOUR PROGRAMMING LANGUAGE SOAP, XML/JSON-RPC,GRPC, ODATA
  12. Query 72 FORMULATE A QUERY AGAINST A REMOTE DATASET AS

    IF THE API WERE A DATABASE (CF. SQL) HTTP (QUERY), ODATA, GRAPHQL
  13. Beneficial Impacts 79 THE DEVELOPMENT TEAM CAN STICK TO ITS

    STACK. THE API DEFINITION IS GENERATED BY THE FRAMEWORKS BEING USED.
  14. Adverse Impacts 80 TEAMS ON BOTH THE PROVIDER AND CONSUMER

    SIDES CANNOT DEVELOP CONCURRENTLY. THE LIBRARY USED TO GENERATE THE DEFINITION DOESN'T FULLY SUPPORT THE ENTIRE FEATURE SET OF THE SPECIFICATION.
  15. Interface first 83 FOUNDED ON DESIGN FIRST PRINCIPLES DEFINING ENDPOINTS

    VIA PROGRAMMATIC, TYPE-SAFE, AND PLATFORM-AGNOSTI C INTERFACES OPPORTUNITY TO CONSOLIDATE ALL OUTPUT PORTS OF A DATA PRODUCT WITHIN A SINGLE INTERFACE DESCRIPTION. ADAPT THIS INTERFACE DESCRIPTION BASED ON THE PROVIDED API INTERACTION PATTERNS. IMPLEMENT THE SERVICES USING THE SUPPORTED PATTERNS, ALIGNING WITH THE PROGRAMMING EXPERTISE OF EACH TEAM.
  16. Description 87 Build a first to serve a s a

    language for describing cloud service APIs Ability to facilitate the generation of other API description languages Provides extensible core language primitives to describe API shapes Evolving language so breaking changes can still happen
  17. Interface first at a glimpse 90 Beginning with a data

    model supported by Data Products and Data Contracts Describe the interfaces for a data model in a programmatic and type-safe manner. Available solutions so far: Microsoft TypeSpec, TaxiLang, Fern
  18. API Operations Pipeline Second Iteration 95 •Bundling of Definition Prepare

    •Use of Linters •Redocly for generic structure •Spectral or Vacuum for specific rules, like org-related and OWASP Top 10 •Check for Break Changes with oasdiff Validate •Contract Testing •Using Prism for Mocking •Testsuite covered by Portman and Newman Test •Deploying the definition to an API Gateway including needed transformations Deploy •Publishing the definition and additional information to an IDP and/or Marketplace Publish
  19. Conclusion 99 API Development is a challenging and demanding task.

    Tooling always complements the underlying methodology. Initially, an API Management solution is not required for the development of APIs. To create high-quality APIs, adhere to standards and incorporate concepts from Data Mesh.
  20. 100 codecentric AG | Hochstraße 11 | 42697 Solingen Creating

    the digital future together. Thank you!
  21. References 101 Cover Slide: Photo by Drew Beamer on Unsplash

    Slide 48: Photo by Emily Morter on Unsplash Slide 12: Photo by Franki Chamaki on Unsplash Slide 19: Photo by NASA on Unsplash Slide 21: Photo by Markus Winkler on Unsplash Slide 24: Photo by Sandro Gonzalez on Unsplash Slide 33: Photo by N. on Unsplash Slide 34: Photo by Dimitri Karastelev on Unsplash Slide 55: Photo by Aditya Chinchure on Unsplash Slide 91: Photo by Clay Banks on Unsplash