https://github.com/saidqb/laravel-rest-api
example laravel rest api
https://github.com/saidqb/laravel-rest-api
laravel rest-api
Last synced: over 1 year ago
JSON representation
example laravel rest api
- Host: GitHub
- URL: https://github.com/saidqb/laravel-rest-api
- Owner: saidqb
- Created: 2024-07-06T23:15:48.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-12-12T07:51:35.000Z (over 1 year ago)
- Last Synced: 2025-02-11T11:38:37.318Z (over 1 year ago)
- Topics: laravel, rest-api
- Language: PHP
- Homepage:
- Size: 216 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# laravel-rest-api
VERSION FRAMEWORK : 10.X
## Description
example Laravel Rest Api,
progress build...
## Requirments
PHP : 8.1 - 8.3
## Modified Framework
```
.
+-- app
| +-- Exceptions
| | +-- Handler.php
```
## Filter Query
Using Filter Query
```php
use Saidqb\LaravelSupport\SQ;
$query = SQ::make('QueryFilter')
->request($request->all())
->select([
'id',
'name as full_name',
'email',
])
->search([
'name',
'email',
])
->query(function(){
return DB::table('users');
});
return $this->response($query->get());
```
Response modifier
```php
SQ::responseConfig([
'hide' => ['password'],
'decode' => [],
'decode_array' => [],
]);
```
# postman
## postman
HEADER
```
#Akses Api
Api-Key:
# Akses data login, token didapat dari login
Authorization: Bearer
```
## postman response default
display single data
```json
{
"status": 200,
"success": true,
"error_code": 0,
"message": "success",
"data": {
"item": {}
}
}
```
display multiple data
```json
{
"status": 200,
"success": true,
"error_code": 0,
"message": "success",
"data": {
"items": [],
"pagination" : {}
}
}
```
## Query Params Doc
DOC
===============
## Filter Query By Field
| Key | Name | Result |
| ----- | ------------------ | ------------------------------------------------------------------ |
| `eq` | equal | `field = 'value'` |
| `neq` | not equal | `field != 'value'` |
| `lt` | lower than | `field < 'value'` |
| `gt` | greater than | `field > 'value'` |
| `lte` | lower than equal | `field <= 'value'` |
| `gte` | greater than equal | `field >= 'value'` |
| `le` | like end | `field LIKE 'value%'` |
| `ls` | like start | `field LIKE '%value'` |
| `lse` | like start end | `field LIKE '%value%'` |
| `in` | where IN | `field IN (value)` value using sparator `,` ex `1,2,3,4` / `1` |
| `nin` | where NOT IN | `field NOT IN (value)` value using sparator `,` ex `1,2,3,4` / `1` |
### Avilable Param
1. Sort => `sort=-user_name` => `SORT user_name DESC`
2. Sort => `sort=user_name` => `SORT user_name ASC`
3. Sort => field sort sesuai dengan result
4. limit => default: 10
5. page => default: 1
6. search => `search=keyword`
## COFFEE FOR BEST PERFORMANCE
**[COFFEE HERE](https://saidqb.github.io/coffee)** for more inovation
OR