RESTful APIs in the Real World Course 1
Making RESTful APIs is hard, really hard. There are a lot of concepts
to know - resources, representations, HTTP methods, status codes, etc.
And putting this all to life in a sane way in PHP is no small task. In
this course, we'll learn all…
RESTful APIs in the Real World Course 2
Making RESTful APIs is hard, really hard. There are a lot of concepts
to know - resources, representations, HTTP methods, status codes, etc.
Course 1 got us really comfortable
with all the terminology. So in episode 2, we're attacking the hard
stuff:
Using a serializer…
API Platform 3 Part 1: Mythically Good RESTful APIs
Need to build an API and love the process? You've come to the right place.
Built on top of Symfony, API Platform enables you to build a rich, JSON-LD-powered, hypermedia API... pretty much instantly (we'll even teach you what those buzzwords…
Global RESTful Exception Handling
When we throw an ApiProblemException, we need our app to automatically turn that
into a nicely-formatted API Problem JSON response and return it. That code will look
like what we have down here for validation, but it needs to live in a global spot…
API Platform 2 Part 1: Serious RESTful APIs
API Platform is crushing the scene these days. And it's easy to see why! Built on top of Symfony, API Platform enables you to build a rich, JSON-LD-powered, hypermedia API... pretty much instantly! In this tutorial, we'll build a real app…
Symfony RESTful API: Hypermedia, Links & Bonuses (Course 5)
…hating it
Controlling your JSON fields with VirtualProperty and SerializedName
Customizing your input field names with property_path
The wonderful HATEOAS php library
HAL+JSON... and whether you want to use it or not
Subordinate resources!
Handle ugly, non-RESTful, weird endpoints with some swagger
Symfony RESTful API: Authentication with JWT (Course 4)
After 3 tutorials, we've got a nice API, But we've been completely ignoring
authentication. What about API tokens? Or properly handling errors? Thanks to some modern tools, this will be such a treat:
Understanding JSON web tokens (JWT)
Creating, signing & returning JWT's…
Symfony RESTful API: Basics++ (Course 3)
The basics, check!
Errors, double check!
Now let's get back to some core API concepts and take things up a level by covering a bunch of features that you need... but sometimes can't find related to REST!
REST Pagination
Including next/prev pagination…
Symfony RESTful API: Errors (Course 2)
In course 1, we
added our basic endpoints with some nice tests (yes!).
Now, we turn to a huge part of APIs: handling and returning consistent
errors. Seriously, this is more important than you might think - which
is why we're covering this in episode…
Symfony RESTful API: Course 1
In this series, we get to work: by building the same API in the
REST series, but leveraging
all the amazing tools and libraries of the Symfony framework. If terminology
like representations, resources, and hypermedia are new to you, start
with the REST series and…
Charge It (The Stripe PHP SDK)
Stripe has a nice, RESTful API, and you're going to spend a lot of time talking with
it. Google for "Stripe API docs" to find this amazing page. You can set this as your
new homepage: it describes every endpoint: how to create charges…
Operations
Let's get to work customizing our API. A RESTful API is all about resources.
We have one resource - our CheeseListing - and, by default, API Platform generated
5 endpoints for it. These are called "operations".
Operations are divided into two categories. First, "collection" operations. These…
The Serializer: Swiss-Army Knife of APIs
The Serializer: Swiss-Army Knife of APIs¶
Hey guys! Welcome to episode 2 of our RESTFUL API’s in the real world series.
In episode 1 we covered a lot of the basics. Phew! And explained really important
confusing terms like representations, resources, idempotency, GET…
Track
Learn APIs
…Fortunately, our tools have never been better. Unfortunately - and surprisingly - building a RESTful API can be *really* tough. But in the future, we won't let that stop us.
This series is all about uncovering and unpacking the strange world of REST and building real…
The REST API Tutorial
…to the rules too
much, you’ll get buried in technical draft specifications and blog post.
You’ll also get the feeling that a perfectly RESTful API might be impossible,
and it would probably be pretty tough to use anyways.
Instead, we’ll build a…
On Authentication Success
…But... if you want to get technical about things... this
solution isn't RESTful: it sort of turns our authentication endpoint into what looks
like a "user" resource. But, don't let that get in your way: if you do want to
return the User…
GET’ing Resources, and Content-Type
…
echo "\n\n";
The URL is /api/programmers/{nickname}, where the nickname part changes
based on which programmer you want to get. In a RESTful API, the URL structures
don’t actually matter. But to keep your sanity, if /api/programmers returns
the collection of…
A Great Place to Hide Things! The data- Attributes
…If
you want to check it out, it's inside of the src/AppBundle/Controller directory:
RepLogController:
I have a bunch of different RESTful API endpoints and one is called, deleteRepLogAction():
As long as we make a DELETE request to /reps/ID-of-the-rep…
User API & the Serializer
…add a method called apiMe(). Give this an @Route() - autocomplete the one
from the Symfony Component - and set the URL to /api/me:
This isn't a very restful endpoint, but it's often a convenient one to have.
To require authentication to use this…
API Platform 2 Part 3: Custom Resources
…3, we're taking customizations to the next level:
A RESTful implementation of a "publish" action
Complex ACL rules around who can publish under different conditions
Doing custom actions before save with a data persister
Truly custom fields via a data provider
Completely-custom, non…
x
99