Published: 23 January 2020
Summary
GraphQL has emerged as an alternative to REST APIs. It provides flexibility to API consumers but brings new challenges to API delivery. Application technical professionals responsible for API design, integration and management must assess GraphQL’s benefits and impact to API governance and security.
Included in Full Research
- What Is GraphQL?
- The GraphQL Ecosystem
- How Do GraphQL and REST Compare?
- Learning GraphQL
- Three Use Cases for GraphQL APIs
- Client-Centric API Use Case
- Platform-Centric Use Case
- Data-Centric Use Case
- Future Direction — Supporting BI and Data Virtualization
- API Management and Governance for GraphQL
- API Life Cycle Management
- Developer Engagement
- Traffic Management
- Caching Support
- Protocol Support
- Monitoring
- Usage Analytics
- Authentication
- Authorization
- Security Policies
- Designing GraphQL APIs
- The Key Elements of GraphQL
- Interacting With a GraphQL API
- Strengths
- App Developer Flexibility and Agility
- Standardization
- Technology Familiarity
- A Complete Set of Interaction Patterns
- Healthy and Growing Ecosystem
- Weaknesses
- Initial Learning Curve Impacts Productivity
- Query Optimization Introduces Complexity
- New “Plumbing” Required
- Specification Maturity and Completeness
- JavaScript Dominance
- Learn GraphQL Fundamentals to Differentiate It From REST
- Engage Your API Consumers (Particularly UI/UX Developers)
- Continue to Use REST Where Its Ubiquity and Familiarity Ease Developer Adoption
- Assess the Impact of GraphQL on Your API Management and Security Infrastructure
- Apply an Iterative and Evolutionary Approach to Designing and Implementing GraphQL
- Ensure Your API Design Guidelines Cover the Shortcomings of GraphQL
- GraphQL History and Governance