The default serialization method for the Drupal 8 REST API is HAL JSON (Hypertext Application Language JavaScript Object Notation). HAL is a format for expressing actions and relationships between resources. It adds additional attributes to allow exploration and traversal of your API from within the API response itself.
The following screenshot explains the _links object:

When we examine the results of a simple node query, the first element we see in the response is the _links object. This contains URLs that can be used to traverse the API and retrieve other data. You'll notice that it contains a link to the author of both the node as well as the node revision. These can be understood in a generic way without the interface needing to construct the URL from other information in the response. HAL also defines the idea of embedded resources.
Embedded resources are intended to reduce the amount of traffic to the API by having important information about a related resource contained within the response. For example, a node is associated with a user, so information about that user would be embedded within the response for the node. Likewise, Taxonomy terms, images, or any other sort of related entity could be exposed in this way. Unfortunately, while Drupal does include these embedded entities, it only exposes the URL and type. There has been discussion about better exposure of embedded resources since September 2013 and, right now, they are targeting Drupal 8.4, for more information see https://www.drupal.org/node/2100637.
