API Design Patterns, video edition

Video description

In Video Editions the narrator reads the book while the content, figures, code listings, diagrams, and text appear on the screen. Like an audiobook that you can also watch as a video.

A concept-rich book on API design patterns. Deeply engrossing and fun to read.
Satej Sahu, Honeywell

A collection of best practices and design standards for web and internal APIs.

In API Design Patterns you will find:
  • Guiding principles for API patterns
  • Fundamentals of resource layout and naming
  • Handling data types for any programming language
  • Standard methods that ensure predictability
  • Field masks for targeted partial updates
  • Authentication and validation methods for secure APIs
  • Collective operations for moving, managing, and deleting data
  • Advanced patterns for special interactions and data transformations

API Design Patterns reveals best practices for building stable, user-friendly APIs. These design patterns can be applied to solve common API problems and flexibly altered to fit your specific needs. Hands-on examples and relevant use-cases illustrate patterns for API fundamentals, advanced functionalities, and even uncommon scenarios.

about the technology

APIs are contracts that define how applications, services, and components communicate. API design patterns provide a shared set of best practices, specifications and standards that ensure APIs are reliable and simple for other developers to use. This book collects and explains the most important patterns from both the API design community and the experts at Google.

about the book

API Design Patterns lays out a set of design principles for building internal and public-facing APIs. Google API expert JJ Geewax presents patterns that ensure your APIs are consistent, scalable, and flexible. You’ll improve the design of the most common APIs, plus discover techniques for tricky edge cases. Precise illustrations, relevant examples, and detailed scenarios make every pattern clear and easy to understand.

about the audience

For developers building web and internal APIs in any language.

about the author

JJ Geewax is a software engineer at Google, focusing on Google Cloud Platform, API design, and real-time payment systems. He is also the author of Manning’s Google Cloud Platform in Action.

The right way to build APIs.
Jorge Ezequiel Bo, Naranjax

If API design or refactoring is in your future, this book is a great investment!
Yul Williams, U.S. Department of Defense

Makes the complex puzzle of designing APIs into a delightful learning experience.
Akshat Paul, McKinsey & Company

NARRATED BY SARAH DAWE

Table of contents

  1. Part 1. Introduction
  2. Chapter 1. Introduction to APIs
  3. Chapter 1. What are resource-oriented APIs?
  4. Chapter 1. Expressive
  5. Chapter 2. Introduction to API design patterns
  6. Chapter 2. Why are API design patterns important?
  7. Chapter 2. Anatomy of an API design pattern
  8. Chapter 2. Case study: Twapi, a Twitter-like API
  9. Chapter 2. Exporting data
  10. Part 2. Design principles
  11. Chapter 3. Naming
  12. Chapter 3. Language, grammar, and syntax
  13. Chapter 3. Syntax
  14. Chapter 3. Case study: What happens when you choose bad names?
  15. Chapter 4. Resource scope and hierarchy
  16. Chapter 4. Types of relationships
  17. Chapter 4. Choosing the right relationship
  18. Chapter 4. References or in-line data
  19. Chapter 4. Anti-patterns
  20. Chapter 5. Data types and defaults
  21. Chapter 5. Booleans
  22. Chapter 5. Bounds
  23. Chapter 5. Strings
  24. Chapter 5. Enumerations
  25. Chapter 5. Maps
  26. Part 3. Fundamentals
  27. Chapter 6. Resource identification
  28. Chapter 6. Permanent
  29. Chapter 6. What does a good identifier look like?
  30. Chapter 6. Checksums
  31. Chapter 6. Implementation
  32. Chapter 6. Tomb-stoning
  33. Chapter 6. What about UUIDs?
  34. Chapter 7. Standard methods
  35. Chapter 7. Idempotence and side effects
  36. Chapter 7. List
  37. Chapter 7. Update
  38. Chapter 7. Replace
  39. Chapter 8. Partial updates and retrievals
  40. Chapter 8. Implementation
  41. Chapter 8. Repeated fields
  42. Chapter 8. Implicit field masks
  43. Chapter 8. Trade-offs
  44. Chapter 9. Custom methods
  45. Chapter 9. Overview
  46. Chapter 9. Resources vs. collections
  47. Chapter 10. Long-running operations
  48. Chapter 10. Implementation
  49. Chapter 10. Resolution
  50. Chapter 10. Error handling
  51. Chapter 10. Pausing and resuming operations
  52. Chapter 10. Persistence
  53. Chapter 11. Rerunnable jobs
  54. Chapter 11. The custom run method
  55. Part 4. Resource relationships
  56. Chapter 12. Singleton sub-resources
  57. Chapter 12. Implementation
  58. Chapter 12. Hierarchy
  59. Chapter 13. Cross references
  60. Chapter 13. Value vs. reference
  61. Chapter 14. Association resources
  62. Chapter 14. Uniqueness
  63. Chapter 15. Add and remove custom methods
  64. Chapter 16. Polymorphism
  65. Chapter 16. Polymorphic structure
  66. Chapter 16. Why not polymorphic methods?
  67. Part 5. Collective operations
  68. Chapter 17. Copy and move
  69. Chapter 17. Identifiers
  70. Chapter 17. Related resources
  71. Chapter 17. Inherited metadata
  72. Chapter 17. Atomicity
  73. Chapter 18. Batch operations
  74. Chapter 18. Ordering of results
  75. Chapter 18. Batch Delete
  76. Chapter 19. Criteria-based deletion
  77. Chapter 19. Validation only by default
  78. Chapter 20. Anonymous writes
  79. Chapter 20. Consistency
  80. Chapter 21. Pagination
  81. Chapter 21. Page tokens
  82. Chapter 21. Total count
  83. Chapter 22. Filtering
  84. Chapter 22. Structure
  85. Chapter 22. Filter syntax and behavior - Part 1
  86. Chapter 22. Filter syntax and behavior - Part 2
  87. Chapter 22. Filter syntax and behavior - Part 3
  88. Chapter 23. Importing and exporting
  89. Chapter 23. Implementation
  90. Chapter 23. Consistency
  91. Chapter 23. Failures and retries
  92. Chapter 23. Filtering and field masks
  93. Part 6. Safety and security
  94. Chapter 24. Versioning and compatibility
  95. Chapter 24. Defining backward compatibility - Part 1
  96. Chapter 24. Defining backward compatibility - Part 2
  97. Chapter 24. Implementation
  98. Chapter 24. Semantic versioning
  99. Chapter 24. Trade-offs
  100. Chapter 24. Happiness vs. ubiquity
  101. Chapter 25. Soft deletion
  102. Chapter 25. Modifying standard methods
  103. Chapter 25. Expiration
  104. Chapter 26. Request deduplication
  105. Chapter 26. Response caching
  106. Chapter 27. Request validation
  107. Chapter 27. External dependencies
  108. Chapter 28. Resource revisions
  109. Chapter 28. Creating revisions
  110. Chapter 28. Restoring a previous revision
  111. Chapter 29. Request retrial
  112. Chapter 29. Server-specified retry timing
  113. Chapter 29. Retry After
  114. Chapter 30. Request authentication
  115. Chapter 30. Implementation
  116. Chapter 30. Request fingerprinting
  117. Chapter 30. Including the signature

Product information

  • Title: API Design Patterns, video edition
  • Author(s): John J. Geewax
  • Release date: July 2021
  • Publisher(s): Manning Publications
  • ISBN: None