Skip to content

Commit ac7934c

Browse files
committed
Improve Scribe annotations
1 parent b62fbd1 commit ac7934c

9 files changed

+61
-0
lines changed

src/Http/Controllers/Api/ComponentController.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,12 @@ class ComponentController extends Controller
2424
* @apiResourceCollection \Cachet\Http\Resources\Component
2525
*
2626
* @apiResourceModel \Cachet\Models\Component
27+
*
28+
* @queryParam per_page int How many items to show per page. Example: 20
29+
* @queryParam page int Which page to show. Example: 2
30+
* @queryParam sort string Field to sort by. Enum: name, status, enabled Example: name
31+
* @queryParam include string Include related resources. Enum: group, incidents Example: group,incidents
32+
* @queryParam filters string[] Filter the resources. Example: name=api
2733
*/
2834
public function index()
2935
{

src/Http/Controllers/Api/ComponentGroupController.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@ class ComponentGroupController extends Controller
2424
* @apiResource \Cachet\Http\Resources\ComponentGroup
2525
*
2626
* @apiResourceModel \Cachet\Models\ComponentGroup
27+
*
28+
* @queryParam per_page int How many items to show per page. Example: 20
29+
* @queryParam page int Which page to show. Example: 2
30+
* @queryParam sort string Field to sort by. Enum: name, id Example: name
31+
* @queryParam include string Include related resources. Enum: components Example: components
2732
*/
2833
public function index()
2934
{

src/Http/Controllers/Api/IncidentController.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@ class IncidentController extends Controller
2525
* @apiResourceCollection \Cachet\Http\Resources\Incident
2626
*
2727
* @apiResourceModel \Cachet\Models\Incident
28+
*
29+
* @queryParam per_page int How many items to show per page. Example: 20
30+
* @queryParam page int Which page to show. Example: 2
31+
* @queryParam sort string Field to sort by. Enum: name, id, status Example: status
32+
* @queryParam include string Include related resources. Enum: updates Example: updates
2833
*/
2934
public function index()
3035
{

src/Http/Controllers/Api/IncidentTemplateController.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@ class IncidentTemplateController extends Controller
2424
* @apiResourceCollection \Cachet\Http\Resources\IncidentTemplate
2525
*
2626
* @apiResourceModel \Cachet\Models\IncidentTemplate
27+
*
28+
* @queryParam per_page int How many items to show per page. Example: 20
29+
* @queryParam page int Which page to show. Example: 2
30+
* @queryParam sort string Field to sort by. Enum: name, slug, id Example: name
31+
* @queryParam filters string[] Filter the resources.
2732
*/
2833
public function index()
2934
{

src/Http/Controllers/Api/IncidentUpdateController.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@ class IncidentUpdateController extends Controller
2525
* @apiResourceCollection \Cachet\Http\Resources\IncidentUpdate
2626
*
2727
* @apiResourceModel \Cachet\Models\IncidentUpdate
28+
*
29+
* @queryParam per_page int How many items to show per page. Example: 20
30+
* @queryParam page int Which page to show. Example: 2
31+
* @queryParam sort string Field to sort by. Enum: name, created_at Example: name
32+
* @queryParam filters string[] Filter the resources.
2833
*/
2934
public function index(Incident $incident)
3035
{

src/Http/Controllers/Api/MetricController.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,12 @@ class MetricController extends Controller
2525
* @apiResourceCollection \Cachet\Http\Resources\Metric
2626
*
2727
* @apiResourceModel \Cachet\Models\Metric
28+
*
29+
* @queryParam per_page int How many items to show per page. Example: 20
30+
* @queryParam page int Which page to show. Example: 2
31+
* @queryParam sort string Field to sort by. Enum: name, order, id enabled Example: name
32+
* @queryParam include string Include related resources. Enum: points Example: points
33+
* @queryParam filters string[] Filter the resources. Example: name=api
2834
*/
2935
public function index()
3036
{

src/Http/Controllers/Api/MetricPointController.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,11 @@ class MetricPointController extends Controller
2323
* @apiResourceCollection \Cachet\Http\Resources\MetricPoint
2424
*
2525
* @apiResourceModel \Cachet\Models\MetricPoint
26+
*
27+
* @queryParam per_page int How many items to show per page. Example: 20
28+
* @queryParam page int Which page to show. Example: 2
29+
* @queryParam sort string Field to sort by. Enum: name, order, id Example: name
30+
* @queryParam include string Include related resources. Enum: metric Example: metric
2631
*/
2732
public function index(Metric $metric)
2833
{

src/Http/Controllers/Api/ScheduleController.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,12 @@ class ScheduleController extends Controller
2424
* @apiResourceCollection \Cachet\Http\Resources\Schedule
2525
*
2626
* @apiResourceModel \Cachet\Models\Schedule
27+
*
28+
* @queryParam per_page int How many items to show per page. Example: 20
29+
* @queryParam page int Which page to show. Example: 2
30+
* @queryParam sort string Field to sort by. Enum: name, id, scheduled_at, completed_at, enabled Example: name
31+
* @queryParam include string Include related resources. Enum: components Example: components
32+
* @queryParam filters string[] Filter the resources. Example: name=api
2733
*/
2834
public function index()
2935
{

src/Http/Requests/CreateComponentRequest.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,22 @@ public function rules(): array
3333
'component_group_id' => ['int', 'min:0', Rule::exists('component_groups', 'id')],
3434
];
3535
}
36+
37+
/**
38+
* Specify body parameter documentation for Scribe.
39+
*/
40+
public function bodyParameters(): array
41+
{
42+
return [
43+
'status' => [
44+
'description' => 'The status of the component. See [Component Statuses](/v3.x/guide/components#component-statuses) for more information.',
45+
'example' => '1',
46+
'required' => false,
47+
'schema' => [
48+
'type' => 'integer',
49+
'enum' => ComponentStatusEnum::cases(),
50+
],
51+
],
52+
];
53+
}
3654
}

0 commit comments

Comments
 (0)