AVAILABLE NOW 🚀
Become a PHP API Pro: Learn the Essentials of API Development in PHP!
Unleash powerful, scalable APIs 🔥
"Zero confusion...only crystal clear understanding of API concepts and their practical application." Gary
Essential Learning for Every PHP Developer
Every PHP developer will eventually be required to build and maintain APIs—that’s a fact of life for us all. However, with so many considerations and different approaches, it can be hard to know if you're doing it right.
It’s easy to feel overwhelmed with all the terminology and conflicting advice. How do you know who to believe? What are you supposed to know? Is there a ‘best way’ to version, secure, and optimize an API, or does it all depend?
That level of understanding and experience might seem years away from where you are now… Am I right? Actually, I’m wrong! You’re a lot closer than you think.
I’ve packaged everything you need to know into a coherent video course that is relevant to you, easy to understand, and painless to apply.
Starting from scratch, we’ll build our own API. I’ll take all the jargon and confusing concepts, explain them in plain language, demonstrate them using logical, practical examples, and let you try parts that will embed this knowledge into your brain.
Every PHP position requires API knowledge. I’ll give you the edge over the competition by showing you not just how to do things, but when, where, and why to apply certain techniques, and how those can differ in various scenarios.
While many developers have an average understanding of APIs, HTTP, and web development, by the time you finish this course, you'll be the expert in the room.
Why Should You Enroll In This Course?
💰 Career Advancement: These skills are guaranteed to propel your career forward.
🪢 Industry-Standard Techniques: Learn the methods used in the best APIs.
🆕 Up-to-Date Information: Stay relevant with current, market-driven content.
🧠 Deep Understanding: Achieve an advanced level of knowledge in APIs and REST.
🌴 Flexible Learning: Work at your own pace and take as much time as you need.
🔍 Attention to Detail: No other course covers this subject with the same level of detail.
📈 Promotion Readiness: Gain the expertise needed to become a senior developer.
💼 Career Mobility: API fundamentals are transferable across all programming languages.
By the end of the course you will have a complete understanding of all these ESSENTIALS
REST - Resources + Representations - Serialization
API Versioning - Hypermedia APIs and HATEOAS - API Testing
Using Postman - Open API - Optimization and Performance
Documenting + Designing APIs - Pagination, Filtering, Sorting - API Caching
Error Handling and API Problem - Cache-Control - API Security
PLUS MUCH MORE!!
BUY THIS COURSE NOW
One payment of $69 + VAT added on checkout page
✅ Exclusive Content
✅ Over 100 video tutorials for $69
✅ Subtitles in your language
✅ Over 10 hours of quality content - no filler
✅ All code examples included
✅ Industry standard practices
✅ Lifetime ownership
📜 Certificate of achievement
🤝 30 day money back guarantee
HERE'S WHAT'S COVERED IN THIS COURSE..
API is a BIG SUBJECT...it needs a BIG COURSE
API Fundamentals
- How REST Works
- The Different Types of API
- What Are Resources?
- Resource Identifiers
- Representations
- Hypermedia APIs
- Introduction to Headers
- Statelessness
- Project Setup
- Using Postman
- Connecting to the DB
- PHPStan Composer Script
- Creating Entities
- Collection Endpoints
- Item Endpoints
- Content-Type Middleware
- Refactoring to an Interface
- Dynamic Serialization Formats
REST Operations
- Introduction to REST Operations
- GET Collection Theory Part 1
- Idempotency
- Safe Operations
- GET Collection Theory Part 2
- GET Item Theory
- POST Theory
- DELETE Theory
- PUT Theory
- PATCH Theory
- HEAD Theory
- OPTIONS Theory
- GET Collection Operations
- Postman Operations
- GET Item Operations
- Postman Collections
- GET Item Operations
- POST Operations
- DELETE Operations
- PUT Operations
- PATCH Operations
- PHPStan Config
API Design and Docs
- Introduction
- API Development Approaches
- Code First API Development
- Design First API Development
- What is API First
- Open API Specification
- Create an OAS with Swagger p1
- Create an OAS with Swagger p2
- Public, Private, and Partner APIs
- The Business: Jet-Fu.com
- Documenting Hypermedia
Error Handling
- API Error Handling
- Problem Details RFC
- Documenting Error Responses
- Customized Error Handling
- Set the Default Error Handler
- Problem Details Body
- Problem Detail Enum
- Validating Entities
- Entity Validator
- Extracting Validation Errors
- Validation Constraints
- Validation Exception
- Problem Details Extension
- Refactoring Inherited Code
- Problem Content Type
- Validation Groups
- Customized Serialization
- Logging Errors
- Monolog Logger
- Maintenance Mode
- 503 Retry After
Related Resources
- Custom Serializer
- Setting Default Content Format
- Passenger Entity
- Route Grouping
- Create a Postman API
- Create the Passengers Table
- Create Entity Relationships
- Create the Reservations Table
- Seeding the Database
- Documenting Reservation Operations
- Reservations Routing
- Reservations Controller
- Reservation Repository
- The Query Builder
- Creating Nested Resources
- Soft Deletes
- Retrieving Single Reservations
- Updating Reservations
Paginating, Filtering, Sorting
- Introduction to Pagination
- Paginating a Query
- Pagination Query Parameters
- Creating Pagination Links
- Custom Count Queries
- Creating Pagination Metadata
- Pagination Metadata Object
- Pagination Metadata Factory
- Paginating Flights
- Query Filters
- Applying Dynamic Filters
- Counting Filtered Records
- Sorting Records
- Sorting Demo
- Reusable Sort Component
- Sorting Reservations
Performance and Optimization
- Database Indexes
- Avoiding DB ORM Pitfalls
- Checking DB Queries
- Query Caching
- Application Cache
- Choosing What to Cache
- Create a Cache Key
- Checking the Cache
- Add to the Cache
- Route Middleware
- Refactor for Middleware
- Caching Considerations
- Monitoring Cache Performance
- Intro to Http Caching
- Reverse Proxy Caching
- Http Cache Middleware
- Cache Control
- Expires Header
- Vary Header
- Content Length
API Security
- API Security Introduction
- Using JWTs in PHP
- JWT Composition
- JWT Authentication Middleware
- Authenticating Tokens
- Json Web Key Sets (jwks)
- Decoding a JWT
- Auth User Object
- Intro to Authorization
- Access Control Manager
- Roles and Permissions
- Checking Permissions
- Resource Ownership
- Checking Ownership
- Merging Permissions
- Permissions Middleware
Versioning
- Introduction to Versioning
- Versioning Considerations
- URI Versioning
- Header Versioning
- Media Type Versioning
- Documenting Change
- API Evolution
- Deprecation Strategies
- Sunset Headers
- How to do API Versioning
API Testing
- Introduction to Testing
- Removing Owner ID
- Postman Test Setup
- Write Your First Test
- Schema Testing
- Mock Servers
- Practice Testing an Endpoint
- Testing Updates
- Testing Deletes
- Testing 404s
- Testing Collections
- Postman Collection Runner
- Postman CLI
- Generate CI/CD Test Scripts
- Performance Testing
Bonus Section
I always add to my courses after they have been released based on feedback and additional requested material.
This bonus section is reserved for that purpose and the course will be updated with the most requested content in the near future.
BUY THIS COURSE NOW
One payment of $69 + VAT added on checkout page
✅ Exclusive Content
✅ Over 100 video tutorials for $69
✅ Subtitles in your language
✅ Over 10 hours of quality content - no filler
✅ All code examples included
✅ Industry standard practices
✅ Lifetime ownership
📜 Certificate of achievement
🤝 30 day money back guarantee
Check out some example videos from the course
Check back often for new content
Course Introduction - How REST Works
This video will show you all of the main components of REST, why they exist, and how they are used.
What are Resource Identifiers?
A Resource Identifier, also known as a URI (Uniform Resource Identifier), is an essential component of RESTful APIs as it allows clients to interact with specific resources by targeting their unique identifiers.
Using Postman
When it comes to testing an API, using a web browser can have its limitations. This is where tools like Postman come in handy. Postman is a popular API development and testing tool that allows you to easily make requests to APIs.
Idempotency
Idempotence means that the result of performing an operation multiple times is the same as performing it once. It is important that your API behaves in expected ways and knowing which operations should / should not be idempotent will help you with this.
PUT Operations
A HTTP PUT operation is used to update or replace a resource on the server. When you send a PUT request to a specific URI, you're instructing the server to update the resource at that location with the new data provided in the request body.
Create an OAS using the Swagger Editor
The Open API Specification looks scary on first glance but actually there are tools we can use which makes the experience of creating one really quite painless...almost enjoyable!
Creating Nested Resources
A reservation can't exist without a related flight so it kinda makes sense to create this as a nested resource on a flights endpoint. Let me show you what I mean.
Paginating a Query
Here I'll show you how you can edit a database query so that it can also handle pagination.
HTTP Cache Middleware
We can create A Http Cache Middleware and add it only to the routes where we want Http Caching to apply.
URI Versioning
URI versioning, where the version number is included directly in the URI (Uniform Resource Identifier) of an API, is one of the most common methods for managing API versions.
The Postman CLI
The Postman CLI tool is an advanced command-line interface that allows API developers to run their Postman collections directly from the terminal.
BUY THIS COURSE NOW
One payment of $69 + VAT added on checkout page
✅ Exclusive Content
✅ Over 100 video tutorials for $69
✅ Subtitles in your language
✅ Over 10 hours of quality content - no filler
✅ All code examples included
✅ Industry standard practices
✅ Lifetime ownership
📜 Certificate of achievement
🤝 30 day money back guarantee
Also check out these high-quality LIVE STREAMS which I created to accompany the course!
More to come! Make sure you subscribe for my live schedule!
Live Dive into RESTful Resources
This is the first live coding session to accompany the PHP API Pro course. In the session I'll create routes and handlers for retrieving single flights and collections of flights from the API. We'll also consider what our response content (representation) should look like when we serialize it as well as discussing other things.
Content Negotiation using Middleware and Enums
This is the second live coding session to accompany the PHP API Pro. In this session I'll create PSR15 middleware which leans on enums to handle content negotiation by checking the request accept header in order to serve content in the requested format. I'll also show you a really cool refactoring hack 😉
REST API basics with the API Guy JustSteveKing
This is the third live session to accompany the PHP API Pro course. Join us live as we delve deep into the world of RESTful APIs with the expertise of API guru JustSteveKing. Whether you're a seasoned developer or just starting out, this stream is the perfect opportunity to enhance your understanding of REST operations, their purposes, status codes, representations, and much more.
OpenAPI 3: Design REST API using Swagger Editor.
In this fourth live session to accompany the PHP API Pro course I will show you how to create an OpenAPI document using the Swagger editor. I'll discuss the benefits of Open API and also talk you through the differences between code-first, design-first, and api-first approaches to API development.
PHP API Pro: Live Dive into REST error handling
This is the fifth live coding session to accompany the PHP API Pro course. In this session I'll create a custom validation exception and use a ProblemDetail enum in order to format a 422 unprocessable content error response which contains details of the errors plus hypermedia which allows the client to research the problem further.
PHP API Pro Live - API Pagination and Hypermedia
This is the sixth live coding session to accompany the PHP API Pro course. In this session I'll dynamically generate API hypermedia, including pagination page and metadata links. Then I'll refactor this away into a reusable factory class which can be used to paginate any collection resource 💪
Check Out My Other Courses
PHP Professional Toolkit Plus
All of the skills you need to advance your PHP developer career. 4 courses bundled into one with a massive saving 💲
Symfony Framework Pro
Unlock your PHP potential and develop your skills to the next level with PHP Framework Pro & Symfony 7 Microservice.
Complete Testing Bundle
Testing PHP and Test Driven PHP combined into one bundle. You'll look at testing completely differently after this.
PHP Framework Pro
Essential learning for every PHP developer, this course fills a big gap in your PHP framework knowledge.
Test Driven PHP
Take your dev skills to the next level by creating an API from scratch using TDD with the PestPHP testing framework.
Symfony 7 Microservice
I can guarantee this is the best way to learn Symfony by building something CURRENT and REAL
PHP Pro Bundle
Are you aiming to master the intricacies of PHP frameworks or become the go-to expert on APIs? Then this bundle is designed to catapult your career forward.
PHP Professional Toolkit
Within this bundle you will receive three modern PHP courses to take your skills to a whole new level, it includes everything a good dev needs to know.
PHP Bundle
Two 5 Star PHP courses, a total of 30 hours of quality PHP content, that is relevant for today's PHP developer. You buy one get the other half price giving a massive saving 💲
Object Oriented PHP
Looking to master PHP Object-Oriented Programming? Then you're in the right place. This course will guide you through the core concepts and advanced techniques.
OOP and Framework Foundations
This bundle contains my two most popular courses: Learn Object Oriented PHP and PHP Framework Pro. Elevate your PHP skills to the next level.
Testing PHP
Learning to test isn't just a skill—it's a fundamental part of coding. When you understand testing, you understand how to write better, more robust code.
The Battle Ready Programmer
Take your PHP + Laravel skills to a new level with The Battle Ready Programmer bundle, featuring a book created by Ash Allen.
Battle Ready Laravel
The ultimate guide to auditing, testing, fixing and improving your Laravel applications created by Ash Allen.
This is what people have said about this course
I'm able to understand everything you've presented with your delivery style! In the longer run I intend to build an API with Laravel, but I like your decision to strip away much of the framework magic to focus on the concepts. Thank you for taking the time to put together this course :) - Brian Seymour
I am new to this field of APIs, I feel very insecure and have gaps in my knowledge, Gary has closed some of those gaps. - Jordi
This is what people have said about my other courses
I do not know of anyone else that can lecture on Frameworks and has the same depth of working knowledge. Thank you! Mark Corrigan
This course is exactly what I'm looking for - Mark Watson
I have learnt quite a lot of useful stuff which you don't find in other courses, and I must say that my PHP skills level has grown tremendously - Nimrod Musungu
I liked the way he explains clearly the things he is teaching - Lorenzo
I have learnt OOP in a better and easy way, it gave me the confidence to stand in developer community and apply for my next job - Mayur
I appreciate Sir Gary's responsiveness to questions and willingness to clarify my doubts. In summary, this course exceeded my expectations. It transformed my coding skills and gave me the confidence to tackle complex - Asadullah
This is the course if you want a better understanding of TDD with useful examples and code along - Edin
It's really valuable because we go through all the steps of creating an API using TDD approach. There isn't much content of such quality available at such a reasonable price, so keep up the good work - German
The course answers exactly my needs. Jad
I really enjoy how the information is presented. I'm an experienced software engineer with knowledge related to PHP frameworks and the way information is presented is very valuable to me to recap the commonalities behind the specifics of PHP frameworks. Adrian Megreanu-Maior
I like this course and it was so worth waiting for. Alexis
I can understand the clear and perfect explanations - Luis Solis
This is perfect! - Unjoined
You have a great way of explaining OOP - Locoplata
This is one of the best courses I have ever done. You have a gift for teaching. Your training has given me very valuable context for all things I knew, corrected some stuff I did incorrectly, and has taught me innumerable new things. - Mark Thijssen
Making me enjoy coding again. - Drew Hinde
Gary has deep knowledge and he is following the best practices. I have no suspicions about learning non-useful nor obsolete techniques. It is essential to have work / code discipline and he has it and kind of routing you to have the same. - Burak
Gary has a patient delivery style, and I can understand him. I also appreciate that code for the video is provided, with each video, because I like to spend time testing and changing that code to get further into it. - Karl Zipser
Well explained step by step approach - Takunda Chibanda
The way of teaching is so good with real time examples. There is also engaging activities - Lokith S
Information delivered clearly and in a well-structured way - Sim
This course is fantastic! I'm really looking forward to watching the rest of the course. Thanks a million Gary! - Michael Gibbs
Well structured and taught - Suleyman Solak
Great tutorial! - Fh Ndiritu
It's much more pleasant to follow than most other courses I have tried. - Mick Amato
Thanks for this video, been watching it for the 2nd time and I can't even feel the time goes by - Lexer Quine
I won't lie, I've watched a lot of php oop course and this is the best!! Thank you king - Yasser Latrach
PHP is making sense and I can apply what I am learning at my job - Dee
Very engaging and easy to understand the concepts - Luciano
I'm very happy with the course and the instructor. - Paulo
Gary explains OOP with PHP very clearly and is easy to understand. I think it's simply great - thanks for creating it!! - Nicolas Alexander Rau
This course is a true gem! It's the first time I watched a 3h course and felt I really understood the concepts. Thank you so much Gary! Looking forward to the full course:) - Giulia Pizzignacco
I saw all the videos of oriented object programming and they were awesome! Great content - Arius
Great stuff for OOP in PHP for beginners and great reminders for other Devs. - TomTom Shaylash
Excellent course delivered by a knowledgeable and engaging content creator. Highly recommended - Drew Hinde
I have learnt so much new information which helps me to write efficient php (oop) code. I am very thankful to Gary for providing such quality content - Ridwanullah Raufi
I'm very pleased with the way Gary explains everything. - Rob Spruyt
I'm enjoying the clear English of Gary, well spoken and succinct explanation of his code. - James
Exactly what I needed for my level of coding, I can create crud applications in PHP, but OOP is completely new to me. - Tom
Sufficiently long sections to be able to take in the information, it makes it easier to understand. Very good explanations. - Mats Akebrand
I have had an extremely positive experience with this course, so Mr Clarke had definitely earned a perfect 5 stars from me! This course has helped me to understand how OOP works SO MUCH better than I previously did. I 100% understand all of his examples. - Jeffrey Carter
Excellent course, interesting and engaging - Clive
Thank you so much! Appreciate your hard work - Paul Toma
Great work. Waiting for next videos - Alwin Augustin
Beautiful work! - Mohammed B
Great work. Thank you Sir! - Yusuf Aliya
Great video! Thanks so much - Ck
Interesting tutorial, thanks for all! - Mdazhardware
Thanks, awesome work!- Hamad Adel
Great work!- Houssem Rahrah
Thanks for your time we appreciate it!- Mamadou Aly Sy
Great!- Sergey Vasko
Nice course- Kennedy Muthui
Gary Clarke - Who am I?
Hello and thank you so much for checking out my work. My name is Gary Clarke and I'm a software developer with many years experience, primarily in PHP. I started creating video tutorials during lockdown in 2020 because I wanted the challenge of being able to explain complex / technical subjects to others in a way which is easy to understand and remember.
At this moment in time, my videos have been watched over half a million times and I intend to keep creating new and improved content and teaching more and more new people. It would be my pleasure to see you on the inside of one of my courses.
Jordi⭐️⭐️⭐️⭐️⭐️
✅ Valuable information ✅ Helpful practice activities ✅ Clear instructions
✅ Accurate course description ✅ Engaging delivery style
✅Improved competency ✅ Knowledgeable instructor
Brian Seymour⭐️⭐️⭐️⭐️⭐️
✅ Valuable information ✅ Helpful practice activities ✅ Clear instructions
✅ Accurate course description ✅ Engaging delivery style
✅Improved competency ✅ Knowledgeable instructor