WordCamp GR 2017 – WP-API: The Good, the Bad, and the Ugly – J Andrew Scott
J Andrew Scott – http://rubberchickenfarm.com/
History of APIs
- RSS
- Advantages
- Fast & reliable
- Easy to consume
- Almost no technical footprint
- Disadvantages
- Read-only
- Static content
- No authentication
- No user-driven content (i.e. comments, favorites, etc)
- Advantages
- DIY API
- Advantages
- Dynamic content
- User-driven content
- App & user authentication
- Roles & permissions based
- Connected applications
- Disadvantages
- DIY OAuth
- Redundant URI scheme
- Mediocre performance
- Large technical footprint
- Advantages
- WP-API
- Advantages
- Succinct URI scheme
- Improved performance
- Small technical footprint
- Available in WordPress core
- Disadvantages
- Granular transactions
- No batch uploads
- Increased number of API calls
- What once required 2 web servers now required 12-15 servers
- Advantages
WP-API Disadvantage Factors & Solutions
- Number of content types
- Solution: consolidate endpoints
- Volume of individual API calls
- Solution: batch processing endpoints
- Frequency of individual API calls
- Solution: page-level caching
Lessons Learned
- Use standard authentication methods
- Use page-level caching on GET requests
- Varnish
- WordPress object caching
- Use custom endpoints
- for upload of large batches of content
- for consolidating repetitive API calls