
REST and JSON API standards for modern Laravel backends.
laravel-api follows the SKILL.md standard. Use the install command to add it to your agent stack.
---
name: Laravel API
description: REST and JSON API standards for modern Laravel backends.
metadata:
labels: [laravel, api, rest, json, sanctum]
triggers:
files: ['routes/api.php', 'app/Http/Resources/**/*.php']
keywords: [resource, collection, sanctum, passport, cors]
---
# Laravel API
## **Priority: P1 (HIGH)**
## Structure
```text
app/
└── Http/
├── Resources/ # Data transformation
└── Controllers/
└── Api/ # API specific logic
```
## Implementation Guidelines
- **API Resources**: Always use Resources/Collections for JSON formatting.
- **RESTful Actions**: Follow standard naming (`index`, `store`, `update`).
- **Auth**: Use **Sanctum** for SPAs/Mobile or **Passport** for OAuth2.
- **Status Codes**: Return appropriate HTTP codes (201 Created, 422 Unprocessable).
- **Versioning**: Prefix routes with version tags (e.g., `api/v1/...`).
- **Rate Limiting**: Configure `RateLimiter` to protect public endpoints.
## Anti-Patterns
- **Raw Models**: **No raw model returns**: Information leakage risk.
- **Manual JSON**: **No response()->create()**: Use API Resources.
- **Session Auth**: **No sessions for APIs**: Use Tokens (Sanctum).
- **Hardcoded URLs**: **No static links in JSON**: Use HATEOAS or route names.
## References
- [API Resource Patterns](references/implementation.md)