Skip to content

Latest commit

 

History

History
55 lines (44 loc) · 1.2 KB

add_root_key.md

File metadata and controls

55 lines (44 loc) · 1.2 KB

Back to Guides

How to add root key

Add the root key to your API is quite simple with ActiveModelSerializers. The Adapter is what determines the format of your JSON response. The default adapter is the Attributes which doesn't have the root key, so your response is something similar to:

{
  "id": 1,
  "title": "Awesome Post Tile",
  "content": "Post content"
}

In order to add the root key you need to use the JSON Adapter, you can change this in an initializer:

ActiveModelSerializers.config.adapter = :json

You can also specify a class as adapter, as long as it complies with the ActiveModelSerializers adapters interface. It will add the root key to all your serialized endpoints.

ex:

{
  "post": {
    "id": 1,
    "title": "Awesome Post Tile",
    "content": "Post content"
  }
}

or if it returns a collection:

{
  "posts": [
    {
      "id": 1,
      "title": "Awesome Post Tile",
      "content": "Post content"
    },
    {
      "id": 2,
      "title": "Another Post Tile",
      "content": "Another post content"
    }
  ]
}

There are several ways to specify root when using the JSON adapter.