- APIs reminders: REST, HATEOAS, hypermedia, GraphQL
- APIs at the heart of the Web today
- JavaScript and Progressive Web Apps
- API Platform, Symfony and React
- Immediate benefits
Introduction to API Platform
Practical information
Need more information?
Goals
API Platform is an Open Source framework completely integrated with Symfony which makes building functional, secure and powerful web APIs easier. It is the tool that enables to create the most advanced new generation APIs on the market. This training course will introduce you to this framework and its key functionalities and will therefore make the construction of “API first”-oriented applications easier.
Program
Discovering API Platform
Creating an API
- Setting up your development environment with Docker
Creating an API resource
- Represent a resource with its PHP class
- HATEOAS / Linked Data
- JSON-LD + Hydra
- JSON:API
- Schema.org
- GraphQL
Integration with Doctrine
- Create your first entity
- Expose data thanks to metadata
- Dynamic admin generation
Configure operations
- Default operations
- Configuration inheritance
- Read-only operations
- Change an URL
- Configure multiple resources
Handle serialization
- Serialization with Symfony
- Nested resources
- Sparse fieldsets
Validate data
- Assertions
- Automatic assertions
Filter data
- With Doctrine
- ApiFilter attribute
- With a service
- SearchFilter
- Change the default order
- Multiple order
- OrderFilter
- PropertyFilter
Paginate data
- Default JSON-LD pagination
- Configure the pagination
Handle users
- Memory User Provider
- LexikJWTAuthenticationBundle
- SwaggerUI
Secure data
- Secure a resource
- Secure an operation
- Secure a property
Cross-Origin Resource Sharing (CORS)
- Principles
- NelmioCorsBundle
Internal behavior and events
- Metadata: ApiResource and Operations
- Request workflow
- API Platform events
- Listen to an event
Extend API Platform
- Custom State Provider / Processor
- Extend Metadata
Transform data
- Add custom data
- Use DTOs
Customize OpenAPI documentation
Customize Hydra documentation
Upload images
- Base64 and VichUploaderBundle
- Upload a file
Store data in cache
- HTTP Cache
Test API
- Behat
- PHPUnit
Go further
- Subresources
- Mercure
- Messenger
- DTO and Messenger
The promise
- JS stack
- Other skeletons
- Kubernetes
- Caddy
Our trainers
Discover our team !
Kévin DUNGLAS
CEO
Kévin is the founder of Les-Tilleuls.coop. He’s a member of Symfony’s core-team and the creator of the API Platform framework. He’s a contributor to over a hundred Open Source projects, and is also a conference speaker, an article and technical book writer as well as a lecturer at Lille University.
Antoine BLUCHET
Principal developer
Full-Stack expert, Antoine has been contributing to Open Source software for almost 10 years. Author and maintainer of JavaScript modules, he also contributes to Symfony or API Platform. He also masters Node.js and many JavaScript frameworks (Nest, Angular, React). As an architect, implementing and supporting teams on these technologies are his daily job. He is also a trainer, blogger and speaker.