API resources
Resources define explicit serialization independent of storage.
What it is
Resources define explicit serialization independent of storage.
When to use it
Use for API contracts and sensitive-field exclusion.
Syntax
return new OrderResource($order);Example
namespace App\Http\Resources;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;
class OrderResource extends JsonResource
{
public function toArray(Request $request): array
{
return ["id" => $this->id, "reference" => $this->reference,
"total_cents" => $this->total_cents, "status" => $this->status];
}
}Common mistakes
Resource serialization does not authorize; explicitly decide how pagination/envelopes work.