Restive provides an ApiController class that your controllers must extend to provide api access to your models.
Routes must be defined for each model you want to access, using the Restive::resource method.
The routes and the controller will allow access to various api endpoints, which act like standard Laravel resource routes, with the addition of filtering/sorting query parameters.
The controller also provides validation on create/update methods and pagination for the index method.