52950 lines
1.7 MiB
52950 lines
1.7 MiB
{
|
|
"openapi": "3.0.0",
|
|
"info": {
|
|
"title": "Reparee Collection",
|
|
"description": "Auto-generated from OpenAPI spec. Import storage/app/openapi-default.json for the full schema.",
|
|
"version": "1.0.0"
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "http://{{base_url}}"
|
|
}
|
|
],
|
|
"components": {
|
|
"securitySchemes": {
|
|
"bearerAuth": {
|
|
"type": "http",
|
|
"scheme": "bearer"
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"bearerAuth": []
|
|
}
|
|
],
|
|
"tags": [
|
|
{
|
|
"name": "Login"
|
|
},
|
|
{
|
|
"name": "Profile"
|
|
},
|
|
{
|
|
"name": "Logout"
|
|
},
|
|
{
|
|
"name": "Referral Sources"
|
|
},
|
|
{
|
|
"name": "Set Default Referral Source"
|
|
},
|
|
{
|
|
"name": "Customers"
|
|
},
|
|
{
|
|
"name": "Customer Types"
|
|
},
|
|
{
|
|
"name": "Countries"
|
|
},
|
|
{
|
|
"name": "States"
|
|
},
|
|
{
|
|
"name": "Payment Terms"
|
|
},
|
|
{
|
|
"name": "Set Default Payment Term"
|
|
},
|
|
{
|
|
"name": "Shop Types"
|
|
},
|
|
{
|
|
"name": "Vehicle Body Types"
|
|
},
|
|
{
|
|
"name": "Vehicle Fuel Types"
|
|
},
|
|
{
|
|
"name": "Vehicle Transmissions"
|
|
},
|
|
{
|
|
"name": "Vehicle Colors"
|
|
},
|
|
{
|
|
"name": "Vehicles"
|
|
},
|
|
{
|
|
"name": "Get Vehicle Owners"
|
|
},
|
|
{
|
|
"name": "Link Customer To Vehicle"
|
|
},
|
|
{
|
|
"name": "Unlink Customer From Vehicle"
|
|
},
|
|
{
|
|
"name": "Get Makes"
|
|
},
|
|
{
|
|
"name": "Get Models"
|
|
},
|
|
{
|
|
"name": "Document Types"
|
|
},
|
|
{
|
|
"name": "Vehicle Documents"
|
|
},
|
|
{
|
|
"name": "Vehicle Mile And Kms"
|
|
},
|
|
{
|
|
"name": "Departments"
|
|
},
|
|
{
|
|
"name": "Set Favorite Department"
|
|
},
|
|
{
|
|
"name": "Remove Favorite Department"
|
|
},
|
|
{
|
|
"name": "Employees"
|
|
},
|
|
{
|
|
"name": "Roles"
|
|
},
|
|
{
|
|
"name": "Unit Types"
|
|
},
|
|
{
|
|
"name": "Set Favorite Unit Type"
|
|
},
|
|
{
|
|
"name": "Remove Favorite Unit Type"
|
|
},
|
|
{
|
|
"name": "Inventory Categories"
|
|
},
|
|
{
|
|
"name": "Set Favorite Inventory Category"
|
|
},
|
|
{
|
|
"name": "Remove Favorite Inventory Category"
|
|
},
|
|
{
|
|
"name": "Labor Rates"
|
|
},
|
|
{
|
|
"name": "Set Favorite Labor Rate"
|
|
},
|
|
{
|
|
"name": "Remove Favorite Labor Rate"
|
|
},
|
|
{
|
|
"name": "Vendors"
|
|
},
|
|
{
|
|
"name": "Toggle Vendor Status"
|
|
},
|
|
{
|
|
"name": "Create Vendor Address"
|
|
},
|
|
{
|
|
"name": "Vendor Address"
|
|
},
|
|
{
|
|
"name": "Inspection Categories"
|
|
},
|
|
{
|
|
"name": "Inspections"
|
|
},
|
|
{
|
|
"name": "Change Inspection Status"
|
|
},
|
|
{
|
|
"name": "Labels"
|
|
},
|
|
{
|
|
"name": "Insurance Types"
|
|
},
|
|
{
|
|
"name": "Estimates"
|
|
},
|
|
{
|
|
"name": "Quick Remark"
|
|
},
|
|
{
|
|
"name": "Quick Notes"
|
|
},
|
|
{
|
|
"name": "Shop Recommendations"
|
|
},
|
|
{
|
|
"name": "Check Point Label"
|
|
},
|
|
{
|
|
"name": "Inspection Check Points"
|
|
},
|
|
{
|
|
"name": "Toggle Label To Checkpoint"
|
|
},
|
|
{
|
|
"name": "Job Cards"
|
|
},
|
|
{
|
|
"name": "Payment Mode"
|
|
},
|
|
{
|
|
"name": "Payment Recieved"
|
|
},
|
|
{
|
|
"name": "Parts"
|
|
},
|
|
{
|
|
"name": "Import Parts"
|
|
},
|
|
{
|
|
"name": "Export Parts"
|
|
},
|
|
{
|
|
"name": "Toggle Part Status"
|
|
},
|
|
{
|
|
"name": "Purchase Orders"
|
|
},
|
|
{
|
|
"name": "Services"
|
|
},
|
|
{
|
|
"name": "Import Services"
|
|
},
|
|
{
|
|
"name": "Export Services"
|
|
},
|
|
{
|
|
"name": "Toggle Expense Item Status"
|
|
},
|
|
{
|
|
"name": "Expense Items"
|
|
},
|
|
{
|
|
"name": "Bills"
|
|
},
|
|
{
|
|
"name": "Expenses"
|
|
},
|
|
{
|
|
"name": "Task Types"
|
|
},
|
|
{
|
|
"name": "Set Default Task Type"
|
|
},
|
|
{
|
|
"name": "Remove Default Task Type"
|
|
},
|
|
{
|
|
"name": "Task Sections"
|
|
},
|
|
{
|
|
"name": "Set Default Task Section"
|
|
},
|
|
{
|
|
"name": "Remove Default Task Section"
|
|
},
|
|
{
|
|
"name": "Change Task Section Arrangement"
|
|
},
|
|
{
|
|
"name": "Tasks"
|
|
},
|
|
{
|
|
"name": "Appointments"
|
|
},
|
|
{
|
|
"name": "Invoice Sequences"
|
|
},
|
|
{
|
|
"name": "Set Default Invoice Sequence"
|
|
},
|
|
{
|
|
"name": "Remove Default Invoice Sequence"
|
|
},
|
|
{
|
|
"name": "Service Groups"
|
|
},
|
|
{
|
|
"name": "Service Group Includes"
|
|
},
|
|
{
|
|
"name": "Service Group Pricings"
|
|
},
|
|
{
|
|
"name": "Service Group Services"
|
|
},
|
|
{
|
|
"name": "Service Group Parts"
|
|
},
|
|
{
|
|
"name": "Invoice Labels"
|
|
},
|
|
{
|
|
"name": "Invoices"
|
|
},
|
|
{
|
|
"name": "Invoice Documents"
|
|
},
|
|
{
|
|
"name": "Invoice Notes"
|
|
},
|
|
{
|
|
"name": "Reasons"
|
|
},
|
|
{
|
|
"name": "Credit Notes"
|
|
},
|
|
{
|
|
"name": "Payment Mades"
|
|
},
|
|
{
|
|
"name": "Vendor Credits"
|
|
},
|
|
{
|
|
"name": "Inventory Adjustments"
|
|
},
|
|
{
|
|
"name": "Time Sheets"
|
|
},
|
|
{
|
|
"name": "Time Sheet"
|
|
},
|
|
{
|
|
"name": "Shop Timings"
|
|
},
|
|
{
|
|
"name": "Set Default Shop Timing"
|
|
},
|
|
{
|
|
"name": "Remove Default Shop Timing"
|
|
},
|
|
{
|
|
"name": "Holiday Years"
|
|
},
|
|
{
|
|
"name": "Holidays"
|
|
},
|
|
{
|
|
"name": "Shop Calenders"
|
|
},
|
|
{
|
|
"name": "Set Default Shop Calender"
|
|
},
|
|
{
|
|
"name": "Remove Default Shop Calender"
|
|
},
|
|
{
|
|
"name": "Settings"
|
|
},
|
|
{
|
|
"name": "Taxes"
|
|
},
|
|
{
|
|
"name": "Set Default Tax"
|
|
},
|
|
{
|
|
"name": "Remove Default Tax"
|
|
},
|
|
{
|
|
"name": "Make And Models"
|
|
},
|
|
{
|
|
"name": "Toggle Make And Model Status"
|
|
},
|
|
{
|
|
"name": "Configurations"
|
|
},
|
|
{
|
|
"name": "Home"
|
|
},
|
|
{
|
|
"name": "Document print / download"
|
|
}
|
|
],
|
|
"paths": {
|
|
"/api/login": {
|
|
"post": {
|
|
"tags": [
|
|
"Login"
|
|
],
|
|
"summary": "POST /api/login",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"password": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"email": "admin@example.com",
|
|
"password": "password123"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"token": {
|
|
"type": "string"
|
|
},
|
|
"user": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Login successful.",
|
|
"data": {
|
|
"token": "1|abc123...",
|
|
"user": {
|
|
"id": 1,
|
|
"first_name": "Admin",
|
|
"last_name": "User",
|
|
"email": "admin@example.com"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/profile": {
|
|
"get": {
|
|
"tags": [
|
|
"Profile"
|
|
],
|
|
"summary": "GET /api/profile",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "integer"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_timing_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"type": "employee",
|
|
"first_name": "Admin",
|
|
"last_name": "User",
|
|
"email": "admin@example.com",
|
|
"phone": "+971501234567",
|
|
"designation": "Service Manager",
|
|
"salary": 5000,
|
|
"wage_type": "Monthly",
|
|
"country_id": 1,
|
|
"department_id": 1,
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"shop_calender_id": 1,
|
|
"shop_timing_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/logout": {
|
|
"post": {
|
|
"tags": [
|
|
"Logout"
|
|
],
|
|
"summary": "POST /api/logout",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {}
|
|
},
|
|
"example": {}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {}
|
|
},
|
|
"example": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/referral-sources": {
|
|
"get": {
|
|
"tags": [
|
|
"Referral Sources"
|
|
],
|
|
"summary": "Display a listing of referral sources.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"name": "Google",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 1,
|
|
"per_page": 15,
|
|
"total": 1,
|
|
"from": 1,
|
|
"to": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Referral Sources"
|
|
],
|
|
"summary": "Store a newly created referral source.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "Friend Referral"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "Google",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/referral-sources/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Referral Sources"
|
|
],
|
|
"summary": "Update the specified referral source.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "Friend Referral"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "Google",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Referral Sources"
|
|
],
|
|
"summary": "Remove the specified referral source.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-default-referral-source": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Default Referral Source"
|
|
],
|
|
"summary": "Set a referral source as the default.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "Google",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/customers": {
|
|
"get": {
|
|
"tags": [
|
|
"Customers"
|
|
],
|
|
"summary": "Display a listing of customers.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"address_line_2": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"customer_type_id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "John",
|
|
"last_name": "Doe",
|
|
"company_name": "string",
|
|
"email": "john.doe@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"address_line_1": "123 Main St",
|
|
"address_line_2": "string",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Customers"
|
|
],
|
|
"summary": "Store a newly created customer.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"customer_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"customer_type_id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "John",
|
|
"last_name": "Doe",
|
|
"company_name": "string",
|
|
"email": "john@example.com",
|
|
"phone": "+971501234567",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"address_line_1": "123 Main St",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"address_line_2": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"customer_type_id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "John",
|
|
"last_name": "Doe",
|
|
"company_name": "string",
|
|
"email": "john.doe@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"address_line_1": "123 Main St",
|
|
"address_line_2": "string",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/customers/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Customers"
|
|
],
|
|
"summary": "Display the specified customer.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"address_line_2": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"customer_type_id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "John",
|
|
"last_name": "Doe",
|
|
"company_name": "string",
|
|
"email": "john.doe@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"address_line_1": "123 Main St",
|
|
"address_line_2": "string",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Customers"
|
|
],
|
|
"summary": "Update the specified customer.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"customer_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"customer_type_id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "John",
|
|
"last_name": "Doe",
|
|
"company_name": "string",
|
|
"email": "john@example.com",
|
|
"phone": "+971501234567",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"address_line_1": "123 Main St",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"address_line_2": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"customer_type_id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "John",
|
|
"last_name": "Doe",
|
|
"company_name": "string",
|
|
"email": "john.doe@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"address_line_1": "123 Main St",
|
|
"address_line_2": "string",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Customers"
|
|
],
|
|
"summary": "Remove the specified customer.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/customers/export": {
|
|
"get": {
|
|
"tags": [
|
|
"Customers"
|
|
],
|
|
"summary": "Export customers to Excel.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"example": "<binary file>"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/customers/import": {
|
|
"post": {
|
|
"tags": [
|
|
"Customers"
|
|
],
|
|
"summary": "Import customers from Excel file.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Action completed successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/customers/{id}/notes/{note_id}": {
|
|
"post": {
|
|
"tags": [
|
|
"Customers"
|
|
],
|
|
"summary": "Add a note to the specified customer.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"note": "Customer prefers original parts."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "note_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"address_line_2": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"customer_type_id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "John",
|
|
"last_name": "Doe",
|
|
"company_name": "string",
|
|
"email": "john.doe@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"address_line_1": "123 Main St",
|
|
"address_line_2": "string",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Customers"
|
|
],
|
|
"summary": "Delete a note from the specified customer.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"note_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"note_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "note_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/customer-types": {
|
|
"get": {
|
|
"tags": [
|
|
"Customer Types"
|
|
],
|
|
"summary": "GET /api/customer-types",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"address_line_2": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"customer_type_id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "John",
|
|
"last_name": "Doe",
|
|
"company_name": "string",
|
|
"email": "john.doe@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"address_line_1": "123 Main St",
|
|
"address_line_2": "string",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/countries": {
|
|
"get": {
|
|
"tags": [
|
|
"Countries"
|
|
],
|
|
"summary": "Display a listing of countries.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Google",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/states": {
|
|
"get": {
|
|
"tags": [
|
|
"States"
|
|
],
|
|
"summary": "Display a listing of states, optionally filtered by country_id.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Google",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-terms": {
|
|
"get": {
|
|
"tags": [
|
|
"Payment Terms"
|
|
],
|
|
"summary": "Display a listing of payment terms.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"days": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Net 30",
|
|
"days": 30,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Payment Terms"
|
|
],
|
|
"summary": "Store a newly created payment term.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"days": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Net 30",
|
|
"days": 30
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"days": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Net 30",
|
|
"days": 30,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-terms/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Payment Terms"
|
|
],
|
|
"summary": "Update the specified payment term.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"days": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Net 30",
|
|
"days": 30
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"days": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Net 30",
|
|
"days": 30,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Payment Terms"
|
|
],
|
|
"summary": "Remove the specified payment term.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-default-payment-term": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Default Payment Term"
|
|
],
|
|
"summary": "Set a payment term as the default.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"days": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Net 30",
|
|
"days": 30,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/shop-types": {
|
|
"get": {
|
|
"tags": [
|
|
"Shop Types"
|
|
],
|
|
"summary": "Display a listing of shop types.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"inspection": {
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Car Workshop",
|
|
"shop_type": "Car",
|
|
"note": "string",
|
|
"inspection": "string",
|
|
"image": "string",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Shop Types"
|
|
],
|
|
"summary": "Store a newly created shop type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Car Workshop",
|
|
"shop_type": "Car",
|
|
"note": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"inspection": {
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Car Workshop",
|
|
"shop_type": "Car",
|
|
"note": "string",
|
|
"inspection": "string",
|
|
"image": "string",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/shop-types/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Shop Types"
|
|
],
|
|
"summary": "Update the specified shop type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Car Workshop",
|
|
"shop_type": "Car",
|
|
"note": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"inspection": {
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Car Workshop",
|
|
"shop_type": "Car",
|
|
"note": "string",
|
|
"inspection": "string",
|
|
"image": "string",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Shop Types"
|
|
],
|
|
"summary": "Remove the specified shop type.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-body-types": {
|
|
"get": {
|
|
"tags": [
|
|
"Vehicle Body Types"
|
|
],
|
|
"summary": "Display a listing of vehicle body types.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Vehicle Body Types"
|
|
],
|
|
"summary": "Store a newly created vehicle body type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Sedan",
|
|
"shop_type_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-body-types/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Vehicle Body Types"
|
|
],
|
|
"summary": "Update the specified vehicle body type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Sedan",
|
|
"shop_type_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Vehicle Body Types"
|
|
],
|
|
"summary": "Remove the specified vehicle body type.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-fuel-types": {
|
|
"get": {
|
|
"tags": [
|
|
"Vehicle Fuel Types"
|
|
],
|
|
"summary": "Display a listing of vehicle fuel types.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Vehicle Fuel Types"
|
|
],
|
|
"summary": "Store a newly created vehicle fuel type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Petrol"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-fuel-types/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Vehicle Fuel Types"
|
|
],
|
|
"summary": "Update the specified vehicle fuel type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Petrol"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Vehicle Fuel Types"
|
|
],
|
|
"summary": "Remove the specified vehicle fuel type.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-transmissions": {
|
|
"get": {
|
|
"tags": [
|
|
"Vehicle Transmissions"
|
|
],
|
|
"summary": "Display a listing of vehicle transmissions.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Vehicle Transmissions"
|
|
],
|
|
"summary": "Store a newly created vehicle transmission.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Automatic"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-transmissions/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Vehicle Transmissions"
|
|
],
|
|
"summary": "Update the specified vehicle transmission.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Automatic"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Vehicle Transmissions"
|
|
],
|
|
"summary": "Remove the specified vehicle transmission.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-colors": {
|
|
"get": {
|
|
"tags": [
|
|
"Vehicle Colors"
|
|
],
|
|
"summary": "Display a listing of vehicle colors.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Vehicle Colors"
|
|
],
|
|
"summary": "Store a newly created vehicle color.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "White",
|
|
"code": "#FFFFFF"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-colors/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Vehicle Colors"
|
|
],
|
|
"summary": "Update the specified vehicle color.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "White",
|
|
"code": "#FFFFFF"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Sedan",
|
|
"shop_type_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Vehicle Colors"
|
|
],
|
|
"summary": "Remove the specified vehicle color.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicles": {
|
|
"get": {
|
|
"tags": [
|
|
"Vehicles"
|
|
],
|
|
"summary": "Display a listing of vehicles.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_color_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"image_url": {
|
|
"type": "string"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"license_plate": {
|
|
"type": "string"
|
|
},
|
|
"vin_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"reg_date": {
|
|
"type": "string"
|
|
},
|
|
"mfg_date": {
|
|
"type": "string"
|
|
},
|
|
"parked_at": {
|
|
"type": "string"
|
|
},
|
|
"mileage": {
|
|
"type": "string"
|
|
},
|
|
"owners_number": {
|
|
"type": "string"
|
|
},
|
|
"front_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"rear_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"vehicle_body_type_id": 1,
|
|
"vehicle_fuel_type_id": 1,
|
|
"vehicle_transmission_id": 1,
|
|
"vehicle_color_id": 1,
|
|
"image": "vehicles/image.jpg",
|
|
"image_url": "https://example.com/storage/vehicles/image.jpg",
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"license_plate": "ABC-1234",
|
|
"vin_number": "1HGBH41JXMN109186",
|
|
"engine_number": "string",
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"reg_date": "2026-03-31",
|
|
"mfg_date": "2026-03-31",
|
|
"parked_at": "string",
|
|
"mileage": "25000",
|
|
"owners_number": "1",
|
|
"front_tire_size": "string",
|
|
"rear_tire_size": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Vehicles"
|
|
],
|
|
"summary": "Store a newly created vehicle.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_color_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"license_plate": {
|
|
"type": "string"
|
|
},
|
|
"vin_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"mileage": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"shop_type_id": 1,
|
|
"vehicle_body_type_id": 1,
|
|
"vehicle_fuel_type_id": 1,
|
|
"vehicle_transmission_id": 1,
|
|
"vehicle_color_id": 1,
|
|
"image": "<binary file>",
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"license_plate": "ABC-1234",
|
|
"vin_number": "1HGBH41JXMN109186",
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"mileage": "25000",
|
|
"note": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_color_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"image_url": {
|
|
"type": "string"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"license_plate": {
|
|
"type": "string"
|
|
},
|
|
"vin_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"reg_date": {
|
|
"type": "string"
|
|
},
|
|
"mfg_date": {
|
|
"type": "string"
|
|
},
|
|
"parked_at": {
|
|
"type": "string"
|
|
},
|
|
"mileage": {
|
|
"type": "string"
|
|
},
|
|
"owners_number": {
|
|
"type": "string"
|
|
},
|
|
"front_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"rear_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"vehicle_body_type_id": 1,
|
|
"vehicle_fuel_type_id": 1,
|
|
"vehicle_transmission_id": 1,
|
|
"vehicle_color_id": 1,
|
|
"image": "vehicles/image.jpg",
|
|
"image_url": "https://example.com/storage/vehicles/image.jpg",
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"license_plate": "ABC-1234",
|
|
"vin_number": "1HGBH41JXMN109186",
|
|
"engine_number": "string",
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"reg_date": "2026-03-31",
|
|
"mfg_date": "2026-03-31",
|
|
"parked_at": "string",
|
|
"mileage": "25000",
|
|
"owners_number": "1",
|
|
"front_tire_size": "string",
|
|
"rear_tire_size": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicles/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Vehicles"
|
|
],
|
|
"summary": "GET /api/vehicles/{id}",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_color_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"image_url": {
|
|
"type": "string"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"license_plate": {
|
|
"type": "string"
|
|
},
|
|
"vin_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"reg_date": {
|
|
"type": "string"
|
|
},
|
|
"mfg_date": {
|
|
"type": "string"
|
|
},
|
|
"parked_at": {
|
|
"type": "string"
|
|
},
|
|
"mileage": {
|
|
"type": "string"
|
|
},
|
|
"owners_number": {
|
|
"type": "string"
|
|
},
|
|
"front_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"rear_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"vehicle_body_type_id": 1,
|
|
"vehicle_fuel_type_id": 1,
|
|
"vehicle_transmission_id": 1,
|
|
"vehicle_color_id": 1,
|
|
"image": "vehicles/image.jpg",
|
|
"image_url": "https://example.com/storage/vehicles/image.jpg",
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"license_plate": "ABC-1234",
|
|
"vin_number": "1HGBH41JXMN109186",
|
|
"engine_number": "string",
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"reg_date": "2026-03-31",
|
|
"mfg_date": "2026-03-31",
|
|
"parked_at": "string",
|
|
"mileage": "25000",
|
|
"owners_number": "1",
|
|
"front_tire_size": "string",
|
|
"rear_tire_size": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Vehicles"
|
|
],
|
|
"summary": "Update the specified vehicle.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_color_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"license_plate": {
|
|
"type": "string"
|
|
},
|
|
"vin_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"mileage": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"shop_type_id": 1,
|
|
"vehicle_body_type_id": 1,
|
|
"vehicle_fuel_type_id": 1,
|
|
"vehicle_transmission_id": 1,
|
|
"vehicle_color_id": 1,
|
|
"image": "<binary file>",
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"license_plate": "ABC-1234",
|
|
"vin_number": "1HGBH41JXMN109186",
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"mileage": "25000",
|
|
"note": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_color_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"image_url": {
|
|
"type": "string"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"license_plate": {
|
|
"type": "string"
|
|
},
|
|
"vin_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"reg_date": {
|
|
"type": "string"
|
|
},
|
|
"mfg_date": {
|
|
"type": "string"
|
|
},
|
|
"parked_at": {
|
|
"type": "string"
|
|
},
|
|
"mileage": {
|
|
"type": "string"
|
|
},
|
|
"owners_number": {
|
|
"type": "string"
|
|
},
|
|
"front_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"rear_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"vehicle_body_type_id": 1,
|
|
"vehicle_fuel_type_id": 1,
|
|
"vehicle_transmission_id": 1,
|
|
"vehicle_color_id": 1,
|
|
"image": "vehicles/image.jpg",
|
|
"image_url": "https://example.com/storage/vehicles/image.jpg",
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"license_plate": "ABC-1234",
|
|
"vin_number": "1HGBH41JXMN109186",
|
|
"engine_number": "string",
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"reg_date": "2026-03-31",
|
|
"mfg_date": "2026-03-31",
|
|
"parked_at": "string",
|
|
"mileage": "25000",
|
|
"owners_number": "1",
|
|
"front_tire_size": "string",
|
|
"rear_tire_size": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Vehicles"
|
|
],
|
|
"summary": "Remove the specified vehicle.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicles/export": {
|
|
"get": {
|
|
"tags": [
|
|
"Vehicles"
|
|
],
|
|
"summary": "Export vehicles to Excel.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"example": "<binary file>"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicles/import": {
|
|
"post": {
|
|
"tags": [
|
|
"Vehicles"
|
|
],
|
|
"summary": "Import vehicles from Excel file.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Action completed successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/get-vehicle-owners": {
|
|
"get": {
|
|
"tags": [
|
|
"Get Vehicle Owners"
|
|
],
|
|
"summary": "Get customers linked to a vehicle.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_color_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"image_url": {
|
|
"type": "string"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"license_plate": {
|
|
"type": "string"
|
|
},
|
|
"vin_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"reg_date": {
|
|
"type": "string"
|
|
},
|
|
"mfg_date": {
|
|
"type": "string"
|
|
},
|
|
"parked_at": {
|
|
"type": "string"
|
|
},
|
|
"mileage": {
|
|
"type": "string"
|
|
},
|
|
"owners_number": {
|
|
"type": "string"
|
|
},
|
|
"front_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"rear_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"vehicle_body_type_id": 1,
|
|
"vehicle_fuel_type_id": 1,
|
|
"vehicle_transmission_id": 1,
|
|
"vehicle_color_id": 1,
|
|
"image": "vehicles/image.jpg",
|
|
"image_url": "https://example.com/storage/vehicles/image.jpg",
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"license_plate": "ABC-1234",
|
|
"vin_number": "1HGBH41JXMN109186",
|
|
"engine_number": "string",
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"reg_date": "2026-03-31",
|
|
"mfg_date": "2026-03-31",
|
|
"parked_at": "string",
|
|
"mileage": "25000",
|
|
"owners_number": "1",
|
|
"front_tire_size": "string",
|
|
"rear_tire_size": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/link-customer-to-vehicle": {
|
|
"post": {
|
|
"tags": [
|
|
"Link Customer To Vehicle"
|
|
],
|
|
"summary": "Link a customer to a vehicle.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"vehicle_id": 1,
|
|
"customer_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_color_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"image_url": {
|
|
"type": "string"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"license_plate": {
|
|
"type": "string"
|
|
},
|
|
"vin_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"reg_date": {
|
|
"type": "string"
|
|
},
|
|
"mfg_date": {
|
|
"type": "string"
|
|
},
|
|
"parked_at": {
|
|
"type": "string"
|
|
},
|
|
"mileage": {
|
|
"type": "string"
|
|
},
|
|
"owners_number": {
|
|
"type": "string"
|
|
},
|
|
"front_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"rear_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"vehicle_body_type_id": 1,
|
|
"vehicle_fuel_type_id": 1,
|
|
"vehicle_transmission_id": 1,
|
|
"vehicle_color_id": 1,
|
|
"image": "vehicles/image.jpg",
|
|
"image_url": "https://example.com/storage/vehicles/image.jpg",
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"license_plate": "ABC-1234",
|
|
"vin_number": "1HGBH41JXMN109186",
|
|
"engine_number": "string",
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"reg_date": "2026-03-31",
|
|
"mfg_date": "2026-03-31",
|
|
"parked_at": "string",
|
|
"mileage": "25000",
|
|
"owners_number": "1",
|
|
"front_tire_size": "string",
|
|
"rear_tire_size": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/unlink-customer-from-vehicle": {
|
|
"post": {
|
|
"tags": [
|
|
"Unlink Customer From Vehicle"
|
|
],
|
|
"summary": "Unlink a customer from a vehicle.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"vehicle_id": 1,
|
|
"customer_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_color_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"image_url": {
|
|
"type": "string"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"license_plate": {
|
|
"type": "string"
|
|
},
|
|
"vin_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_number": {
|
|
"type": "string"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"reg_date": {
|
|
"type": "string"
|
|
},
|
|
"mfg_date": {
|
|
"type": "string"
|
|
},
|
|
"parked_at": {
|
|
"type": "string"
|
|
},
|
|
"mileage": {
|
|
"type": "string"
|
|
},
|
|
"owners_number": {
|
|
"type": "string"
|
|
},
|
|
"front_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"rear_tire_size": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"vehicle_body_type_id": 1,
|
|
"vehicle_fuel_type_id": 1,
|
|
"vehicle_transmission_id": 1,
|
|
"vehicle_color_id": 1,
|
|
"image": "vehicles/image.jpg",
|
|
"image_url": "https://example.com/storage/vehicles/image.jpg",
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"license_plate": "ABC-1234",
|
|
"vin_number": "1HGBH41JXMN109186",
|
|
"engine_number": "string",
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"reg_date": "2026-03-31",
|
|
"mfg_date": "2026-03-31",
|
|
"parked_at": "string",
|
|
"mileage": "25000",
|
|
"owners_number": "1",
|
|
"front_tire_size": "string",
|
|
"rear_tire_size": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/get-makes": {
|
|
"get": {
|
|
"tags": [
|
|
"Get Makes"
|
|
],
|
|
"summary": "GET /api/get-makes",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
"Honda",
|
|
"Toyota"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/get-models": {
|
|
"get": {
|
|
"tags": [
|
|
"Get Models"
|
|
],
|
|
"summary": "GET /api/get-models",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
"Camry",
|
|
"Corolla",
|
|
"Prius"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/document-types": {
|
|
"get": {
|
|
"tags": [
|
|
"Document Types"
|
|
],
|
|
"summary": "Display a listing of document types.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"has_document_number": {
|
|
"type": "boolean"
|
|
},
|
|
"min_cart": {
|
|
"type": "integer"
|
|
},
|
|
"max_cart": {
|
|
"type": "integer"
|
|
},
|
|
"has_document_expire": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_it_mandatory": {
|
|
"type": "boolean"
|
|
},
|
|
"min_files": {
|
|
"type": "integer"
|
|
},
|
|
"max_files": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"name": "Vehicle Registration",
|
|
"has_document_number": true,
|
|
"min_cart": 1,
|
|
"max_cart": 1,
|
|
"has_document_expire": false,
|
|
"mark_it_mandatory": false,
|
|
"min_files": 1,
|
|
"max_files": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Document Types"
|
|
],
|
|
"summary": "Store a newly created document type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"has_document_number": {
|
|
"type": "boolean"
|
|
},
|
|
"has_document_expire": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_it_mandatory": {
|
|
"type": "boolean"
|
|
},
|
|
"min_files": {
|
|
"type": "integer"
|
|
},
|
|
"max_files": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "Vehicle Registration",
|
|
"has_document_number": true,
|
|
"has_document_expire": false,
|
|
"mark_it_mandatory": false,
|
|
"min_files": 1,
|
|
"max_files": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"has_document_number": {
|
|
"type": "boolean"
|
|
},
|
|
"min_cart": {
|
|
"type": "integer"
|
|
},
|
|
"max_cart": {
|
|
"type": "integer"
|
|
},
|
|
"has_document_expire": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_it_mandatory": {
|
|
"type": "boolean"
|
|
},
|
|
"min_files": {
|
|
"type": "integer"
|
|
},
|
|
"max_files": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "Vehicle Registration",
|
|
"has_document_number": true,
|
|
"min_cart": 1,
|
|
"max_cart": 1,
|
|
"has_document_expire": false,
|
|
"mark_it_mandatory": false,
|
|
"min_files": 1,
|
|
"max_files": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/document-types/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Document Types"
|
|
],
|
|
"summary": "Update the specified document type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"has_document_number": {
|
|
"type": "boolean"
|
|
},
|
|
"has_document_expire": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_it_mandatory": {
|
|
"type": "boolean"
|
|
},
|
|
"min_files": {
|
|
"type": "integer"
|
|
},
|
|
"max_files": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "Vehicle Registration",
|
|
"has_document_number": true,
|
|
"has_document_expire": false,
|
|
"mark_it_mandatory": false,
|
|
"min_files": 1,
|
|
"max_files": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"has_document_number": {
|
|
"type": "boolean"
|
|
},
|
|
"min_cart": {
|
|
"type": "integer"
|
|
},
|
|
"max_cart": {
|
|
"type": "integer"
|
|
},
|
|
"has_document_expire": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_it_mandatory": {
|
|
"type": "boolean"
|
|
},
|
|
"min_files": {
|
|
"type": "integer"
|
|
},
|
|
"max_files": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "Vehicle Registration",
|
|
"has_document_number": true,
|
|
"min_cart": 1,
|
|
"max_cart": 1,
|
|
"has_document_expire": false,
|
|
"mark_it_mandatory": false,
|
|
"min_files": 1,
|
|
"max_files": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Document Types"
|
|
],
|
|
"summary": "Remove the specified document type.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-documents": {
|
|
"get": {
|
|
"tags": [
|
|
"Vehicle Documents"
|
|
],
|
|
"summary": "Display a listing of vehicle documents.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"document_expire": {
|
|
"type": "string"
|
|
},
|
|
"document_file": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"vehicle_id": 1,
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"document_number": "DOC-001",
|
|
"document_expire": "2027-03-31",
|
|
"document_file": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Vehicle Documents"
|
|
],
|
|
"summary": "Store a newly created vehicle document.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"vehicle_id": {
|
|
"type": "string"
|
|
},
|
|
"document_type_id": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "string"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"document_expire": {
|
|
"type": "string"
|
|
},
|
|
"document_file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"document_expire": {
|
|
"type": "string"
|
|
},
|
|
"document_file": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"vehicle_id": 1,
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"document_number": "DOC-001",
|
|
"document_expire": "2027-03-31",
|
|
"document_file": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-documents/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Vehicle Documents"
|
|
],
|
|
"summary": "Update the specified vehicle document.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"vehicle_id": {
|
|
"type": "string"
|
|
},
|
|
"document_type_id": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "string"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"document_expire": {
|
|
"type": "string"
|
|
},
|
|
"document_file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"document_expire": {
|
|
"type": "string"
|
|
},
|
|
"document_file": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"vehicle_id": 1,
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"document_number": "DOC-001",
|
|
"document_expire": "2027-03-31",
|
|
"document_file": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Vehicle Documents"
|
|
],
|
|
"summary": "Remove the specified vehicle document.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-mile-and-kms": {
|
|
"get": {
|
|
"tags": [
|
|
"Vehicle Mile And Kms"
|
|
],
|
|
"summary": "Display a listing of vehicle mile/km records.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"miles": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"vehicle_id": 1,
|
|
"miles": 50000,
|
|
"fuel_level": 75,
|
|
"date": "2026-03-31",
|
|
"time": "09:00",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Vehicle Mile And Kms"
|
|
],
|
|
"summary": "Store a newly created vehicle mile/km record.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"miles": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"vehicle_id": 1,
|
|
"miles": 50000,
|
|
"fuel_level": 80,
|
|
"date": "2026-03-31",
|
|
"time": "09:00:00",
|
|
"note": "Routine mileage check."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"miles": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"vehicle_id": 1,
|
|
"miles": 50000,
|
|
"fuel_level": 75,
|
|
"date": "2026-03-31",
|
|
"time": "09:00",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vehicle-mile-and-kms/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Vehicle Mile And Kms"
|
|
],
|
|
"summary": "Update the specified vehicle mile/km record.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"miles": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"vehicle_id": 1,
|
|
"miles": 50000,
|
|
"fuel_level": 80,
|
|
"date": "2026-03-31",
|
|
"time": "09:00:00",
|
|
"note": "Routine mileage check."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"miles": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"vehicle_id": 1,
|
|
"miles": 50000,
|
|
"fuel_level": 75,
|
|
"date": "2026-03-31",
|
|
"time": "09:00",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Vehicle Mile And Kms"
|
|
],
|
|
"summary": "Remove the specified vehicle mile/km record.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/departments": {
|
|
"get": {
|
|
"tags": [
|
|
"Departments"
|
|
],
|
|
"summary": "Display a listing of departments.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"manager_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"assignment_type": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"name": "Service Department",
|
|
"description": "string",
|
|
"manager_id": 1,
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"assignment_type": "none",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Departments"
|
|
],
|
|
"summary": "Store a newly created department.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"manager_id": {
|
|
"type": "integer"
|
|
},
|
|
"assignment_type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "Service Department",
|
|
"description": "string",
|
|
"manager_id": 1,
|
|
"assignment_type": "none"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"manager_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"assignment_type": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "Service Department",
|
|
"description": "string",
|
|
"manager_id": 1,
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"assignment_type": "none",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/departments/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Departments"
|
|
],
|
|
"summary": "Update the specified department.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"manager_id": {
|
|
"type": "integer"
|
|
},
|
|
"assignment_type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "Service Department",
|
|
"description": "string",
|
|
"manager_id": 1,
|
|
"assignment_type": "none"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"manager_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"assignment_type": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "Service Department",
|
|
"description": "string",
|
|
"manager_id": 1,
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"assignment_type": "none",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Departments"
|
|
],
|
|
"summary": "Remove the specified department.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-favorite-department": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Favorite Department"
|
|
],
|
|
"summary": "Mark a department as favorite.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"manager_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"assignment_type": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "Service Department",
|
|
"description": "string",
|
|
"manager_id": 1,
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"assignment_type": "none",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-favorite-department": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Favorite Department"
|
|
],
|
|
"summary": "Remove favorite flag from a department.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"manager_id": {
|
|
"type": "integer"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"assignment_type": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "Service Department",
|
|
"description": "string",
|
|
"manager_id": 1,
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"assignment_type": "none",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/employees": {
|
|
"get": {
|
|
"tags": [
|
|
"Employees"
|
|
],
|
|
"summary": "Display a listing of employees.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "string"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"geo_fence_radius": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"can_create_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"has_active_time_sheet": {
|
|
"type": "boolean"
|
|
},
|
|
"active_time_sheet": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"shop_calender": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"role_id": {
|
|
"type": "integer"
|
|
},
|
|
"role": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"type": "employee",
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane.smith@example.com",
|
|
"phone": "+971501234567",
|
|
"designation": "Technician",
|
|
"salary": "5000.00",
|
|
"wage_type": "Monthly",
|
|
"country_id": 1,
|
|
"department_id": 1,
|
|
"status": "active",
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"shop_calender_id": null,
|
|
"shop_timing_id": null,
|
|
"geo_fence_radius": null,
|
|
"can_create_appointments": false,
|
|
"can_create_bills": false,
|
|
"can_create_check_point_labels": false,
|
|
"can_create_credit_notes": false,
|
|
"can_create_customers": false,
|
|
"can_create_departments": false,
|
|
"can_create_document_types": false,
|
|
"can_create_employees": false,
|
|
"can_create_estimates": false,
|
|
"can_create_expense_items": false,
|
|
"can_create_expenses": false,
|
|
"can_create_holidays": false,
|
|
"can_create_inspection_categories": false,
|
|
"can_create_inspection_check_points": false,
|
|
"can_create_inspections": false,
|
|
"can_create_insurance_types": false,
|
|
"can_create_inventory_adjustments": false,
|
|
"can_create_inventory_categories": false,
|
|
"can_create_invoice_documents": false,
|
|
"can_create_invoice_labels": false,
|
|
"can_create_invoice_notes": false,
|
|
"can_create_invoice_sequences": false,
|
|
"can_create_invoices": false,
|
|
"can_create_job_cards": false,
|
|
"can_create_labels": false,
|
|
"can_create_labor_rates": false,
|
|
"can_create_make_and_models": false,
|
|
"can_create_parts": false,
|
|
"can_create_payment_mades": false,
|
|
"can_create_payment_modes": false,
|
|
"can_create_payment_recieveds": false,
|
|
"can_create_payment_terms": false,
|
|
"can_create_purchase_orders": false,
|
|
"can_create_quick_notes": false,
|
|
"can_create_quick_remarks": false,
|
|
"can_create_reasons": false,
|
|
"can_create_referral_sources": false,
|
|
"can_create_service_group_includes": false,
|
|
"can_create_service_group_parts": false,
|
|
"can_create_service_group_pricings": false,
|
|
"can_create_service_group_services": false,
|
|
"can_create_service_groups": false,
|
|
"can_create_services": false,
|
|
"can_create_settings": false,
|
|
"can_create_shop_calenders": false,
|
|
"can_create_shop_timings": false,
|
|
"can_create_shop_types": false,
|
|
"can_create_task_sections": false,
|
|
"can_create_task_types": false,
|
|
"can_create_tasks": false,
|
|
"can_create_taxes": false,
|
|
"can_create_time_sheets": false,
|
|
"can_create_unit_types": false,
|
|
"can_create_vehicle_body_types": false,
|
|
"can_create_vehicle_colors": false,
|
|
"can_create_vehicle_documents": false,
|
|
"can_create_vehicle_fuel_types": false,
|
|
"can_create_vehicle_mile_and_kms": false,
|
|
"can_create_vehicle_transmissions": false,
|
|
"can_create_vehicles": false,
|
|
"can_create_vendor_credits": false,
|
|
"can_create_vendors": false,
|
|
"can_delete_appointments": false,
|
|
"can_delete_bills": false,
|
|
"can_delete_check_point_labels": false,
|
|
"can_delete_credit_notes": false,
|
|
"can_delete_customers": false,
|
|
"can_delete_departments": false,
|
|
"can_delete_document_types": false,
|
|
"can_delete_employees": false,
|
|
"can_delete_estimates": false,
|
|
"can_delete_expense_items": false,
|
|
"can_delete_expenses": false,
|
|
"can_delete_holidays": false,
|
|
"can_delete_inspection_categories": false,
|
|
"can_delete_inspection_check_points": false,
|
|
"can_delete_inspections": false,
|
|
"can_delete_insurance_types": false,
|
|
"can_delete_inventory_adjustments": false,
|
|
"can_delete_inventory_categories": false,
|
|
"can_delete_invoice_documents": false,
|
|
"can_delete_invoice_labels": false,
|
|
"can_delete_invoice_notes": false,
|
|
"can_delete_invoice_sequences": false,
|
|
"can_delete_invoices": false,
|
|
"can_delete_job_cards": false,
|
|
"can_delete_labels": false,
|
|
"can_delete_labor_rates": false,
|
|
"can_delete_make_and_models": false,
|
|
"can_delete_parts": false,
|
|
"can_delete_payment_mades": false,
|
|
"can_delete_payment_modes": false,
|
|
"can_delete_payment_recieveds": false,
|
|
"can_delete_payment_terms": false,
|
|
"can_delete_purchase_orders": false,
|
|
"can_delete_quick_notes": false,
|
|
"can_delete_quick_remarks": false,
|
|
"can_delete_reasons": false,
|
|
"can_delete_referral_sources": false,
|
|
"can_delete_service_group_includes": false,
|
|
"can_delete_service_group_parts": false,
|
|
"can_delete_service_group_pricings": false,
|
|
"can_delete_service_group_services": false,
|
|
"can_delete_service_groups": false,
|
|
"can_delete_services": false,
|
|
"can_delete_settings": false,
|
|
"can_delete_shop_calenders": false,
|
|
"can_delete_shop_timings": false,
|
|
"can_delete_shop_types": false,
|
|
"can_delete_task_sections": false,
|
|
"can_delete_task_types": false,
|
|
"can_delete_tasks": false,
|
|
"can_delete_taxes": false,
|
|
"can_delete_time_sheets": false,
|
|
"can_delete_unit_types": false,
|
|
"can_delete_vehicle_body_types": false,
|
|
"can_delete_vehicle_colors": false,
|
|
"can_delete_vehicle_documents": false,
|
|
"can_delete_vehicle_fuel_types": false,
|
|
"can_delete_vehicle_mile_and_kms": false,
|
|
"can_delete_vehicle_transmissions": false,
|
|
"can_delete_vehicles": false,
|
|
"can_delete_vendor_credits": false,
|
|
"can_delete_vendors": false,
|
|
"can_update_appointments": false,
|
|
"can_update_bills": false,
|
|
"can_update_check_point_labels": false,
|
|
"can_update_credit_notes": false,
|
|
"can_update_customers": false,
|
|
"can_update_departments": false,
|
|
"can_update_document_types": false,
|
|
"can_update_employees": false,
|
|
"can_update_estimates": false,
|
|
"can_update_expense_items": false,
|
|
"can_update_expenses": false,
|
|
"can_update_holidays": false,
|
|
"can_update_inspection_categories": false,
|
|
"can_update_inspection_check_points": false,
|
|
"can_update_inspections": false,
|
|
"can_update_insurance_types": false,
|
|
"can_update_inventory_adjustments": false,
|
|
"can_update_inventory_categories": false,
|
|
"can_update_invoice_documents": false,
|
|
"can_update_invoice_labels": false,
|
|
"can_update_invoice_notes": false,
|
|
"can_update_invoice_sequences": false,
|
|
"can_update_invoices": false,
|
|
"can_update_job_cards": false,
|
|
"can_update_labels": false,
|
|
"can_update_labor_rates": false,
|
|
"can_update_make_and_models": false,
|
|
"can_update_parts": false,
|
|
"can_update_payment_mades": false,
|
|
"can_update_payment_modes": false,
|
|
"can_update_payment_recieveds": false,
|
|
"can_update_payment_terms": false,
|
|
"can_update_purchase_orders": false,
|
|
"can_update_quick_notes": false,
|
|
"can_update_quick_remarks": false,
|
|
"can_update_reasons": false,
|
|
"can_update_referral_sources": false,
|
|
"can_update_service_group_includes": false,
|
|
"can_update_service_group_parts": false,
|
|
"can_update_service_group_pricings": false,
|
|
"can_update_service_group_services": false,
|
|
"can_update_service_groups": false,
|
|
"can_update_services": false,
|
|
"can_update_settings": false,
|
|
"can_update_shop_calenders": false,
|
|
"can_update_shop_timings": false,
|
|
"can_update_shop_types": false,
|
|
"can_update_task_sections": false,
|
|
"can_update_task_types": false,
|
|
"can_update_tasks": false,
|
|
"can_update_taxes": false,
|
|
"can_update_time_sheets": false,
|
|
"can_update_unit_types": false,
|
|
"can_update_vehicle_body_types": false,
|
|
"can_update_vehicle_colors": false,
|
|
"can_update_vehicle_documents": false,
|
|
"can_update_vehicle_fuel_types": false,
|
|
"can_update_vehicle_mile_and_kms": false,
|
|
"can_update_vehicle_transmissions": false,
|
|
"can_update_vehicles": false,
|
|
"can_update_vendor_credits": false,
|
|
"can_update_vendors": false,
|
|
"can_view_appointments": false,
|
|
"can_view_bills": false,
|
|
"can_view_check_point_labels": false,
|
|
"can_view_credit_notes": false,
|
|
"can_view_customers": false,
|
|
"can_view_departments": false,
|
|
"can_view_document_types": false,
|
|
"can_view_employees": false,
|
|
"can_view_estimates": false,
|
|
"can_view_expense_items": false,
|
|
"can_view_expenses": false,
|
|
"can_view_holidays": false,
|
|
"can_view_inspection_categories": false,
|
|
"can_view_inspection_check_points": false,
|
|
"can_view_inspections": false,
|
|
"can_view_insurance_types": false,
|
|
"can_view_inventory_adjustments": false,
|
|
"can_view_inventory_categories": false,
|
|
"can_view_invoice_documents": false,
|
|
"can_view_invoice_labels": false,
|
|
"can_view_invoice_notes": false,
|
|
"can_view_invoice_sequences": false,
|
|
"can_view_invoices": false,
|
|
"can_view_job_cards": false,
|
|
"can_view_labels": false,
|
|
"can_view_labor_rates": false,
|
|
"can_view_make_and_models": false,
|
|
"can_view_parts": false,
|
|
"can_view_payment_mades": false,
|
|
"can_view_payment_modes": false,
|
|
"can_view_payment_recieveds": false,
|
|
"can_view_payment_terms": false,
|
|
"can_view_purchase_orders": false,
|
|
"can_view_quick_notes": false,
|
|
"can_view_quick_remarks": false,
|
|
"can_view_reasons": false,
|
|
"can_view_referral_sources": false,
|
|
"can_view_service_group_includes": false,
|
|
"can_view_service_group_parts": false,
|
|
"can_view_service_group_pricings": false,
|
|
"can_view_service_group_services": false,
|
|
"can_view_service_groups": false,
|
|
"can_view_services": false,
|
|
"can_view_settings": false,
|
|
"can_view_shop_calenders": false,
|
|
"can_view_shop_timings": false,
|
|
"can_view_shop_types": false,
|
|
"can_view_task_sections": false,
|
|
"can_view_task_types": false,
|
|
"can_view_tasks": false,
|
|
"can_view_taxes": false,
|
|
"can_view_time_sheets": false,
|
|
"can_view_unit_types": false,
|
|
"can_view_vehicle_body_types": false,
|
|
"can_view_vehicle_colors": false,
|
|
"can_view_vehicle_documents": false,
|
|
"can_view_vehicle_fuel_types": false,
|
|
"can_view_vehicle_mile_and_kms": false,
|
|
"can_view_vehicle_transmissions": false,
|
|
"can_view_vehicles": false,
|
|
"can_view_vendor_credits": false,
|
|
"can_view_vendors": false,
|
|
"has_active_time_sheet": false,
|
|
"active_time_sheet": null,
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Service Department"
|
|
},
|
|
"shop_calender": null,
|
|
"shop_timing": null,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"role_id": 1,
|
|
"role": {
|
|
"id": 1,
|
|
"name": "Super Admin"
|
|
}
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75,
|
|
"from": 1,
|
|
"to": 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Employees"
|
|
],
|
|
"summary": "Store a newly created employee.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"password": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "integer"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"role_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane@example.com",
|
|
"password": "secret123",
|
|
"status": "active",
|
|
"type": "employee",
|
|
"phone": "+971501234567",
|
|
"department_id": 1,
|
|
"wage_type": "Monthly",
|
|
"designation": "Technician",
|
|
"salary": 5000,
|
|
"country_id": 1,
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"role_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "string"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"geo_fence_radius": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"can_create_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"has_active_time_sheet": {
|
|
"type": "boolean"
|
|
},
|
|
"active_time_sheet": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"role_id": {
|
|
"type": "integer"
|
|
},
|
|
"role": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Employee created successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"type": "employee",
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane@example.com",
|
|
"phone": "+971501234567",
|
|
"designation": "Technician",
|
|
"salary": "5000.00",
|
|
"wage_type": "Monthly",
|
|
"country_id": 1,
|
|
"department_id": 1,
|
|
"status": "active",
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"shop_calender_id": null,
|
|
"shop_timing_id": null,
|
|
"geo_fence_radius": null,
|
|
"can_create_appointments": false,
|
|
"can_create_bills": false,
|
|
"can_create_check_point_labels": false,
|
|
"can_create_credit_notes": false,
|
|
"can_create_customers": false,
|
|
"can_create_departments": false,
|
|
"can_create_document_types": false,
|
|
"can_create_employees": false,
|
|
"can_create_estimates": false,
|
|
"can_create_expense_items": false,
|
|
"can_create_expenses": false,
|
|
"can_create_holidays": false,
|
|
"can_create_inspection_categories": false,
|
|
"can_create_inspection_check_points": false,
|
|
"can_create_inspections": false,
|
|
"can_create_insurance_types": false,
|
|
"can_create_inventory_adjustments": false,
|
|
"can_create_inventory_categories": false,
|
|
"can_create_invoice_documents": false,
|
|
"can_create_invoice_labels": false,
|
|
"can_create_invoice_notes": false,
|
|
"can_create_invoice_sequences": false,
|
|
"can_create_invoices": false,
|
|
"can_create_job_cards": false,
|
|
"can_create_labels": false,
|
|
"can_create_labor_rates": false,
|
|
"can_create_make_and_models": false,
|
|
"can_create_parts": false,
|
|
"can_create_payment_mades": false,
|
|
"can_create_payment_modes": false,
|
|
"can_create_payment_recieveds": false,
|
|
"can_create_payment_terms": false,
|
|
"can_create_purchase_orders": false,
|
|
"can_create_quick_notes": false,
|
|
"can_create_quick_remarks": false,
|
|
"can_create_reasons": false,
|
|
"can_create_referral_sources": false,
|
|
"can_create_service_group_includes": false,
|
|
"can_create_service_group_parts": false,
|
|
"can_create_service_group_pricings": false,
|
|
"can_create_service_group_services": false,
|
|
"can_create_service_groups": false,
|
|
"can_create_services": false,
|
|
"can_create_settings": false,
|
|
"can_create_shop_calenders": false,
|
|
"can_create_shop_timings": false,
|
|
"can_create_shop_types": false,
|
|
"can_create_task_sections": false,
|
|
"can_create_task_types": false,
|
|
"can_create_tasks": false,
|
|
"can_create_taxes": false,
|
|
"can_create_time_sheets": false,
|
|
"can_create_unit_types": false,
|
|
"can_create_vehicle_body_types": false,
|
|
"can_create_vehicle_colors": false,
|
|
"can_create_vehicle_documents": false,
|
|
"can_create_vehicle_fuel_types": false,
|
|
"can_create_vehicle_mile_and_kms": false,
|
|
"can_create_vehicle_transmissions": false,
|
|
"can_create_vehicles": false,
|
|
"can_create_vendor_credits": false,
|
|
"can_create_vendors": false,
|
|
"can_delete_appointments": false,
|
|
"can_delete_bills": false,
|
|
"can_delete_check_point_labels": false,
|
|
"can_delete_credit_notes": false,
|
|
"can_delete_customers": false,
|
|
"can_delete_departments": false,
|
|
"can_delete_document_types": false,
|
|
"can_delete_employees": false,
|
|
"can_delete_estimates": false,
|
|
"can_delete_expense_items": false,
|
|
"can_delete_expenses": false,
|
|
"can_delete_holidays": false,
|
|
"can_delete_inspection_categories": false,
|
|
"can_delete_inspection_check_points": false,
|
|
"can_delete_inspections": false,
|
|
"can_delete_insurance_types": false,
|
|
"can_delete_inventory_adjustments": false,
|
|
"can_delete_inventory_categories": false,
|
|
"can_delete_invoice_documents": false,
|
|
"can_delete_invoice_labels": false,
|
|
"can_delete_invoice_notes": false,
|
|
"can_delete_invoice_sequences": false,
|
|
"can_delete_invoices": false,
|
|
"can_delete_job_cards": false,
|
|
"can_delete_labels": false,
|
|
"can_delete_labor_rates": false,
|
|
"can_delete_make_and_models": false,
|
|
"can_delete_parts": false,
|
|
"can_delete_payment_mades": false,
|
|
"can_delete_payment_modes": false,
|
|
"can_delete_payment_recieveds": false,
|
|
"can_delete_payment_terms": false,
|
|
"can_delete_purchase_orders": false,
|
|
"can_delete_quick_notes": false,
|
|
"can_delete_quick_remarks": false,
|
|
"can_delete_reasons": false,
|
|
"can_delete_referral_sources": false,
|
|
"can_delete_service_group_includes": false,
|
|
"can_delete_service_group_parts": false,
|
|
"can_delete_service_group_pricings": false,
|
|
"can_delete_service_group_services": false,
|
|
"can_delete_service_groups": false,
|
|
"can_delete_services": false,
|
|
"can_delete_settings": false,
|
|
"can_delete_shop_calenders": false,
|
|
"can_delete_shop_timings": false,
|
|
"can_delete_shop_types": false,
|
|
"can_delete_task_sections": false,
|
|
"can_delete_task_types": false,
|
|
"can_delete_tasks": false,
|
|
"can_delete_taxes": false,
|
|
"can_delete_time_sheets": false,
|
|
"can_delete_unit_types": false,
|
|
"can_delete_vehicle_body_types": false,
|
|
"can_delete_vehicle_colors": false,
|
|
"can_delete_vehicle_documents": false,
|
|
"can_delete_vehicle_fuel_types": false,
|
|
"can_delete_vehicle_mile_and_kms": false,
|
|
"can_delete_vehicle_transmissions": false,
|
|
"can_delete_vehicles": false,
|
|
"can_delete_vendor_credits": false,
|
|
"can_delete_vendors": false,
|
|
"can_update_appointments": false,
|
|
"can_update_bills": false,
|
|
"can_update_check_point_labels": false,
|
|
"can_update_credit_notes": false,
|
|
"can_update_customers": false,
|
|
"can_update_departments": false,
|
|
"can_update_document_types": false,
|
|
"can_update_employees": false,
|
|
"can_update_estimates": false,
|
|
"can_update_expense_items": false,
|
|
"can_update_expenses": false,
|
|
"can_update_holidays": false,
|
|
"can_update_inspection_categories": false,
|
|
"can_update_inspection_check_points": false,
|
|
"can_update_inspections": false,
|
|
"can_update_insurance_types": false,
|
|
"can_update_inventory_adjustments": false,
|
|
"can_update_inventory_categories": false,
|
|
"can_update_invoice_documents": false,
|
|
"can_update_invoice_labels": false,
|
|
"can_update_invoice_notes": false,
|
|
"can_update_invoice_sequences": false,
|
|
"can_update_invoices": false,
|
|
"can_update_job_cards": false,
|
|
"can_update_labels": false,
|
|
"can_update_labor_rates": false,
|
|
"can_update_make_and_models": false,
|
|
"can_update_parts": false,
|
|
"can_update_payment_mades": false,
|
|
"can_update_payment_modes": false,
|
|
"can_update_payment_recieveds": false,
|
|
"can_update_payment_terms": false,
|
|
"can_update_purchase_orders": false,
|
|
"can_update_quick_notes": false,
|
|
"can_update_quick_remarks": false,
|
|
"can_update_reasons": false,
|
|
"can_update_referral_sources": false,
|
|
"can_update_service_group_includes": false,
|
|
"can_update_service_group_parts": false,
|
|
"can_update_service_group_pricings": false,
|
|
"can_update_service_group_services": false,
|
|
"can_update_service_groups": false,
|
|
"can_update_services": false,
|
|
"can_update_settings": false,
|
|
"can_update_shop_calenders": false,
|
|
"can_update_shop_timings": false,
|
|
"can_update_shop_types": false,
|
|
"can_update_task_sections": false,
|
|
"can_update_task_types": false,
|
|
"can_update_tasks": false,
|
|
"can_update_taxes": false,
|
|
"can_update_time_sheets": false,
|
|
"can_update_unit_types": false,
|
|
"can_update_vehicle_body_types": false,
|
|
"can_update_vehicle_colors": false,
|
|
"can_update_vehicle_documents": false,
|
|
"can_update_vehicle_fuel_types": false,
|
|
"can_update_vehicle_mile_and_kms": false,
|
|
"can_update_vehicle_transmissions": false,
|
|
"can_update_vehicles": false,
|
|
"can_update_vendor_credits": false,
|
|
"can_update_vendors": false,
|
|
"can_view_appointments": false,
|
|
"can_view_bills": false,
|
|
"can_view_check_point_labels": false,
|
|
"can_view_credit_notes": false,
|
|
"can_view_customers": false,
|
|
"can_view_departments": false,
|
|
"can_view_document_types": false,
|
|
"can_view_employees": false,
|
|
"can_view_estimates": false,
|
|
"can_view_expense_items": false,
|
|
"can_view_expenses": false,
|
|
"can_view_holidays": false,
|
|
"can_view_inspection_categories": false,
|
|
"can_view_inspection_check_points": false,
|
|
"can_view_inspections": false,
|
|
"can_view_insurance_types": false,
|
|
"can_view_inventory_adjustments": false,
|
|
"can_view_inventory_categories": false,
|
|
"can_view_invoice_documents": false,
|
|
"can_view_invoice_labels": false,
|
|
"can_view_invoice_notes": false,
|
|
"can_view_invoice_sequences": false,
|
|
"can_view_invoices": false,
|
|
"can_view_job_cards": false,
|
|
"can_view_labels": false,
|
|
"can_view_labor_rates": false,
|
|
"can_view_make_and_models": false,
|
|
"can_view_parts": false,
|
|
"can_view_payment_mades": false,
|
|
"can_view_payment_modes": false,
|
|
"can_view_payment_recieveds": false,
|
|
"can_view_payment_terms": false,
|
|
"can_view_purchase_orders": false,
|
|
"can_view_quick_notes": false,
|
|
"can_view_quick_remarks": false,
|
|
"can_view_reasons": false,
|
|
"can_view_referral_sources": false,
|
|
"can_view_service_group_includes": false,
|
|
"can_view_service_group_parts": false,
|
|
"can_view_service_group_pricings": false,
|
|
"can_view_service_group_services": false,
|
|
"can_view_service_groups": false,
|
|
"can_view_services": false,
|
|
"can_view_settings": false,
|
|
"can_view_shop_calenders": false,
|
|
"can_view_shop_timings": false,
|
|
"can_view_shop_types": false,
|
|
"can_view_task_sections": false,
|
|
"can_view_task_types": false,
|
|
"can_view_tasks": false,
|
|
"can_view_taxes": false,
|
|
"can_view_time_sheets": false,
|
|
"can_view_unit_types": false,
|
|
"can_view_vehicle_body_types": false,
|
|
"can_view_vehicle_colors": false,
|
|
"can_view_vehicle_documents": false,
|
|
"can_view_vehicle_fuel_types": false,
|
|
"can_view_vehicle_mile_and_kms": false,
|
|
"can_view_vehicle_transmissions": false,
|
|
"can_view_vehicles": false,
|
|
"can_view_vendor_credits": false,
|
|
"can_view_vendors": false,
|
|
"has_active_time_sheet": false,
|
|
"active_time_sheet": null,
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Service Department"
|
|
},
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"role_id": 1,
|
|
"role": {
|
|
"id": 1,
|
|
"name": "Super Admin"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/employees/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Employees"
|
|
],
|
|
"summary": "Display the specified employee.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "string"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"geo_fence_radius": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"can_create_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"has_active_time_sheet": {
|
|
"type": "boolean"
|
|
},
|
|
"active_time_sheet": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"shop_calender": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"role_id": {
|
|
"type": "integer"
|
|
},
|
|
"role": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"type": "employee",
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane.smith@example.com",
|
|
"phone": "+971501234567",
|
|
"designation": "Technician",
|
|
"salary": "5000.00",
|
|
"wage_type": "Monthly",
|
|
"country_id": 1,
|
|
"department_id": 1,
|
|
"status": "active",
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"shop_calender_id": null,
|
|
"shop_timing_id": null,
|
|
"geo_fence_radius": null,
|
|
"can_create_appointments": false,
|
|
"can_create_bills": false,
|
|
"can_create_check_point_labels": false,
|
|
"can_create_credit_notes": false,
|
|
"can_create_customers": false,
|
|
"can_create_departments": false,
|
|
"can_create_document_types": false,
|
|
"can_create_employees": false,
|
|
"can_create_estimates": false,
|
|
"can_create_expense_items": false,
|
|
"can_create_expenses": false,
|
|
"can_create_holidays": false,
|
|
"can_create_inspection_categories": false,
|
|
"can_create_inspection_check_points": false,
|
|
"can_create_inspections": false,
|
|
"can_create_insurance_types": false,
|
|
"can_create_inventory_adjustments": false,
|
|
"can_create_inventory_categories": false,
|
|
"can_create_invoice_documents": false,
|
|
"can_create_invoice_labels": false,
|
|
"can_create_invoice_notes": false,
|
|
"can_create_invoice_sequences": false,
|
|
"can_create_invoices": false,
|
|
"can_create_job_cards": false,
|
|
"can_create_labels": false,
|
|
"can_create_labor_rates": false,
|
|
"can_create_make_and_models": false,
|
|
"can_create_parts": false,
|
|
"can_create_payment_mades": false,
|
|
"can_create_payment_modes": false,
|
|
"can_create_payment_recieveds": false,
|
|
"can_create_payment_terms": false,
|
|
"can_create_purchase_orders": false,
|
|
"can_create_quick_notes": false,
|
|
"can_create_quick_remarks": false,
|
|
"can_create_reasons": false,
|
|
"can_create_referral_sources": false,
|
|
"can_create_service_group_includes": false,
|
|
"can_create_service_group_parts": false,
|
|
"can_create_service_group_pricings": false,
|
|
"can_create_service_group_services": false,
|
|
"can_create_service_groups": false,
|
|
"can_create_services": false,
|
|
"can_create_settings": false,
|
|
"can_create_shop_calenders": false,
|
|
"can_create_shop_timings": false,
|
|
"can_create_shop_types": false,
|
|
"can_create_task_sections": false,
|
|
"can_create_task_types": false,
|
|
"can_create_tasks": false,
|
|
"can_create_taxes": false,
|
|
"can_create_time_sheets": false,
|
|
"can_create_unit_types": false,
|
|
"can_create_vehicle_body_types": false,
|
|
"can_create_vehicle_colors": false,
|
|
"can_create_vehicle_documents": false,
|
|
"can_create_vehicle_fuel_types": false,
|
|
"can_create_vehicle_mile_and_kms": false,
|
|
"can_create_vehicle_transmissions": false,
|
|
"can_create_vehicles": false,
|
|
"can_create_vendor_credits": false,
|
|
"can_create_vendors": false,
|
|
"can_delete_appointments": false,
|
|
"can_delete_bills": false,
|
|
"can_delete_check_point_labels": false,
|
|
"can_delete_credit_notes": false,
|
|
"can_delete_customers": false,
|
|
"can_delete_departments": false,
|
|
"can_delete_document_types": false,
|
|
"can_delete_employees": false,
|
|
"can_delete_estimates": false,
|
|
"can_delete_expense_items": false,
|
|
"can_delete_expenses": false,
|
|
"can_delete_holidays": false,
|
|
"can_delete_inspection_categories": false,
|
|
"can_delete_inspection_check_points": false,
|
|
"can_delete_inspections": false,
|
|
"can_delete_insurance_types": false,
|
|
"can_delete_inventory_adjustments": false,
|
|
"can_delete_inventory_categories": false,
|
|
"can_delete_invoice_documents": false,
|
|
"can_delete_invoice_labels": false,
|
|
"can_delete_invoice_notes": false,
|
|
"can_delete_invoice_sequences": false,
|
|
"can_delete_invoices": false,
|
|
"can_delete_job_cards": false,
|
|
"can_delete_labels": false,
|
|
"can_delete_labor_rates": false,
|
|
"can_delete_make_and_models": false,
|
|
"can_delete_parts": false,
|
|
"can_delete_payment_mades": false,
|
|
"can_delete_payment_modes": false,
|
|
"can_delete_payment_recieveds": false,
|
|
"can_delete_payment_terms": false,
|
|
"can_delete_purchase_orders": false,
|
|
"can_delete_quick_notes": false,
|
|
"can_delete_quick_remarks": false,
|
|
"can_delete_reasons": false,
|
|
"can_delete_referral_sources": false,
|
|
"can_delete_service_group_includes": false,
|
|
"can_delete_service_group_parts": false,
|
|
"can_delete_service_group_pricings": false,
|
|
"can_delete_service_group_services": false,
|
|
"can_delete_service_groups": false,
|
|
"can_delete_services": false,
|
|
"can_delete_settings": false,
|
|
"can_delete_shop_calenders": false,
|
|
"can_delete_shop_timings": false,
|
|
"can_delete_shop_types": false,
|
|
"can_delete_task_sections": false,
|
|
"can_delete_task_types": false,
|
|
"can_delete_tasks": false,
|
|
"can_delete_taxes": false,
|
|
"can_delete_time_sheets": false,
|
|
"can_delete_unit_types": false,
|
|
"can_delete_vehicle_body_types": false,
|
|
"can_delete_vehicle_colors": false,
|
|
"can_delete_vehicle_documents": false,
|
|
"can_delete_vehicle_fuel_types": false,
|
|
"can_delete_vehicle_mile_and_kms": false,
|
|
"can_delete_vehicle_transmissions": false,
|
|
"can_delete_vehicles": false,
|
|
"can_delete_vendor_credits": false,
|
|
"can_delete_vendors": false,
|
|
"can_update_appointments": false,
|
|
"can_update_bills": false,
|
|
"can_update_check_point_labels": false,
|
|
"can_update_credit_notes": false,
|
|
"can_update_customers": false,
|
|
"can_update_departments": false,
|
|
"can_update_document_types": false,
|
|
"can_update_employees": false,
|
|
"can_update_estimates": false,
|
|
"can_update_expense_items": false,
|
|
"can_update_expenses": false,
|
|
"can_update_holidays": false,
|
|
"can_update_inspection_categories": false,
|
|
"can_update_inspection_check_points": false,
|
|
"can_update_inspections": false,
|
|
"can_update_insurance_types": false,
|
|
"can_update_inventory_adjustments": false,
|
|
"can_update_inventory_categories": false,
|
|
"can_update_invoice_documents": false,
|
|
"can_update_invoice_labels": false,
|
|
"can_update_invoice_notes": false,
|
|
"can_update_invoice_sequences": false,
|
|
"can_update_invoices": false,
|
|
"can_update_job_cards": false,
|
|
"can_update_labels": false,
|
|
"can_update_labor_rates": false,
|
|
"can_update_make_and_models": false,
|
|
"can_update_parts": false,
|
|
"can_update_payment_mades": false,
|
|
"can_update_payment_modes": false,
|
|
"can_update_payment_recieveds": false,
|
|
"can_update_payment_terms": false,
|
|
"can_update_purchase_orders": false,
|
|
"can_update_quick_notes": false,
|
|
"can_update_quick_remarks": false,
|
|
"can_update_reasons": false,
|
|
"can_update_referral_sources": false,
|
|
"can_update_service_group_includes": false,
|
|
"can_update_service_group_parts": false,
|
|
"can_update_service_group_pricings": false,
|
|
"can_update_service_group_services": false,
|
|
"can_update_service_groups": false,
|
|
"can_update_services": false,
|
|
"can_update_settings": false,
|
|
"can_update_shop_calenders": false,
|
|
"can_update_shop_timings": false,
|
|
"can_update_shop_types": false,
|
|
"can_update_task_sections": false,
|
|
"can_update_task_types": false,
|
|
"can_update_tasks": false,
|
|
"can_update_taxes": false,
|
|
"can_update_time_sheets": false,
|
|
"can_update_unit_types": false,
|
|
"can_update_vehicle_body_types": false,
|
|
"can_update_vehicle_colors": false,
|
|
"can_update_vehicle_documents": false,
|
|
"can_update_vehicle_fuel_types": false,
|
|
"can_update_vehicle_mile_and_kms": false,
|
|
"can_update_vehicle_transmissions": false,
|
|
"can_update_vehicles": false,
|
|
"can_update_vendor_credits": false,
|
|
"can_update_vendors": false,
|
|
"can_view_appointments": false,
|
|
"can_view_bills": false,
|
|
"can_view_check_point_labels": false,
|
|
"can_view_credit_notes": false,
|
|
"can_view_customers": false,
|
|
"can_view_departments": false,
|
|
"can_view_document_types": false,
|
|
"can_view_employees": false,
|
|
"can_view_estimates": false,
|
|
"can_view_expense_items": false,
|
|
"can_view_expenses": false,
|
|
"can_view_holidays": false,
|
|
"can_view_inspection_categories": false,
|
|
"can_view_inspection_check_points": false,
|
|
"can_view_inspections": false,
|
|
"can_view_insurance_types": false,
|
|
"can_view_inventory_adjustments": false,
|
|
"can_view_inventory_categories": false,
|
|
"can_view_invoice_documents": false,
|
|
"can_view_invoice_labels": false,
|
|
"can_view_invoice_notes": false,
|
|
"can_view_invoice_sequences": false,
|
|
"can_view_invoices": false,
|
|
"can_view_job_cards": false,
|
|
"can_view_labels": false,
|
|
"can_view_labor_rates": false,
|
|
"can_view_make_and_models": false,
|
|
"can_view_parts": false,
|
|
"can_view_payment_mades": false,
|
|
"can_view_payment_modes": false,
|
|
"can_view_payment_recieveds": false,
|
|
"can_view_payment_terms": false,
|
|
"can_view_purchase_orders": false,
|
|
"can_view_quick_notes": false,
|
|
"can_view_quick_remarks": false,
|
|
"can_view_reasons": false,
|
|
"can_view_referral_sources": false,
|
|
"can_view_service_group_includes": false,
|
|
"can_view_service_group_parts": false,
|
|
"can_view_service_group_pricings": false,
|
|
"can_view_service_group_services": false,
|
|
"can_view_service_groups": false,
|
|
"can_view_services": false,
|
|
"can_view_settings": false,
|
|
"can_view_shop_calenders": false,
|
|
"can_view_shop_timings": false,
|
|
"can_view_shop_types": false,
|
|
"can_view_task_sections": false,
|
|
"can_view_task_types": false,
|
|
"can_view_tasks": false,
|
|
"can_view_taxes": false,
|
|
"can_view_time_sheets": false,
|
|
"can_view_unit_types": false,
|
|
"can_view_vehicle_body_types": false,
|
|
"can_view_vehicle_colors": false,
|
|
"can_view_vehicle_documents": false,
|
|
"can_view_vehicle_fuel_types": false,
|
|
"can_view_vehicle_mile_and_kms": false,
|
|
"can_view_vehicle_transmissions": false,
|
|
"can_view_vehicles": false,
|
|
"can_view_vendor_credits": false,
|
|
"can_view_vendors": false,
|
|
"has_active_time_sheet": false,
|
|
"active_time_sheet": null,
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Service Department"
|
|
},
|
|
"shop_calender": null,
|
|
"shop_timing": null,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"role_id": 1,
|
|
"role": {
|
|
"id": 1,
|
|
"name": "Super Admin"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Employees"
|
|
],
|
|
"summary": "Update the specified employee.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "integer"
|
|
},
|
|
"password": {
|
|
"type": "string"
|
|
},
|
|
"role_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane@example.com",
|
|
"status": "active",
|
|
"phone": "+971501234567",
|
|
"department_id": 1,
|
|
"wage_type": "Monthly",
|
|
"designation": "Senior Technician",
|
|
"salary": 5500,
|
|
"password": "newsecret456",
|
|
"role_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "string"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"geo_fence_radius": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"can_create_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"has_active_time_sheet": {
|
|
"type": "boolean"
|
|
},
|
|
"active_time_sheet": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"role_id": {
|
|
"type": "integer"
|
|
},
|
|
"role": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Employee updated successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"type": "employee",
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane@example.com",
|
|
"phone": "+971501234567",
|
|
"designation": "Senior Technician",
|
|
"salary": "5500.00",
|
|
"wage_type": "Monthly",
|
|
"country_id": 1,
|
|
"department_id": 1,
|
|
"status": "active",
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"shop_calender_id": null,
|
|
"shop_timing_id": null,
|
|
"geo_fence_radius": null,
|
|
"can_create_appointments": false,
|
|
"can_create_bills": false,
|
|
"can_create_check_point_labels": false,
|
|
"can_create_credit_notes": false,
|
|
"can_create_customers": false,
|
|
"can_create_departments": false,
|
|
"can_create_document_types": false,
|
|
"can_create_employees": false,
|
|
"can_create_estimates": false,
|
|
"can_create_expense_items": false,
|
|
"can_create_expenses": false,
|
|
"can_create_holidays": false,
|
|
"can_create_inspection_categories": false,
|
|
"can_create_inspection_check_points": false,
|
|
"can_create_inspections": false,
|
|
"can_create_insurance_types": false,
|
|
"can_create_inventory_adjustments": false,
|
|
"can_create_inventory_categories": false,
|
|
"can_create_invoice_documents": false,
|
|
"can_create_invoice_labels": false,
|
|
"can_create_invoice_notes": false,
|
|
"can_create_invoice_sequences": false,
|
|
"can_create_invoices": false,
|
|
"can_create_job_cards": false,
|
|
"can_create_labels": false,
|
|
"can_create_labor_rates": false,
|
|
"can_create_make_and_models": false,
|
|
"can_create_parts": false,
|
|
"can_create_payment_mades": false,
|
|
"can_create_payment_modes": false,
|
|
"can_create_payment_recieveds": false,
|
|
"can_create_payment_terms": false,
|
|
"can_create_purchase_orders": false,
|
|
"can_create_quick_notes": false,
|
|
"can_create_quick_remarks": false,
|
|
"can_create_reasons": false,
|
|
"can_create_referral_sources": false,
|
|
"can_create_service_group_includes": false,
|
|
"can_create_service_group_parts": false,
|
|
"can_create_service_group_pricings": false,
|
|
"can_create_service_group_services": false,
|
|
"can_create_service_groups": false,
|
|
"can_create_services": false,
|
|
"can_create_settings": false,
|
|
"can_create_shop_calenders": false,
|
|
"can_create_shop_timings": false,
|
|
"can_create_shop_types": false,
|
|
"can_create_task_sections": false,
|
|
"can_create_task_types": false,
|
|
"can_create_tasks": false,
|
|
"can_create_taxes": false,
|
|
"can_create_time_sheets": false,
|
|
"can_create_unit_types": false,
|
|
"can_create_vehicle_body_types": false,
|
|
"can_create_vehicle_colors": false,
|
|
"can_create_vehicle_documents": false,
|
|
"can_create_vehicle_fuel_types": false,
|
|
"can_create_vehicle_mile_and_kms": false,
|
|
"can_create_vehicle_transmissions": false,
|
|
"can_create_vehicles": false,
|
|
"can_create_vendor_credits": false,
|
|
"can_create_vendors": false,
|
|
"can_delete_appointments": false,
|
|
"can_delete_bills": false,
|
|
"can_delete_check_point_labels": false,
|
|
"can_delete_credit_notes": false,
|
|
"can_delete_customers": false,
|
|
"can_delete_departments": false,
|
|
"can_delete_document_types": false,
|
|
"can_delete_employees": false,
|
|
"can_delete_estimates": false,
|
|
"can_delete_expense_items": false,
|
|
"can_delete_expenses": false,
|
|
"can_delete_holidays": false,
|
|
"can_delete_inspection_categories": false,
|
|
"can_delete_inspection_check_points": false,
|
|
"can_delete_inspections": false,
|
|
"can_delete_insurance_types": false,
|
|
"can_delete_inventory_adjustments": false,
|
|
"can_delete_inventory_categories": false,
|
|
"can_delete_invoice_documents": false,
|
|
"can_delete_invoice_labels": false,
|
|
"can_delete_invoice_notes": false,
|
|
"can_delete_invoice_sequences": false,
|
|
"can_delete_invoices": false,
|
|
"can_delete_job_cards": false,
|
|
"can_delete_labels": false,
|
|
"can_delete_labor_rates": false,
|
|
"can_delete_make_and_models": false,
|
|
"can_delete_parts": false,
|
|
"can_delete_payment_mades": false,
|
|
"can_delete_payment_modes": false,
|
|
"can_delete_payment_recieveds": false,
|
|
"can_delete_payment_terms": false,
|
|
"can_delete_purchase_orders": false,
|
|
"can_delete_quick_notes": false,
|
|
"can_delete_quick_remarks": false,
|
|
"can_delete_reasons": false,
|
|
"can_delete_referral_sources": false,
|
|
"can_delete_service_group_includes": false,
|
|
"can_delete_service_group_parts": false,
|
|
"can_delete_service_group_pricings": false,
|
|
"can_delete_service_group_services": false,
|
|
"can_delete_service_groups": false,
|
|
"can_delete_services": false,
|
|
"can_delete_settings": false,
|
|
"can_delete_shop_calenders": false,
|
|
"can_delete_shop_timings": false,
|
|
"can_delete_shop_types": false,
|
|
"can_delete_task_sections": false,
|
|
"can_delete_task_types": false,
|
|
"can_delete_tasks": false,
|
|
"can_delete_taxes": false,
|
|
"can_delete_time_sheets": false,
|
|
"can_delete_unit_types": false,
|
|
"can_delete_vehicle_body_types": false,
|
|
"can_delete_vehicle_colors": false,
|
|
"can_delete_vehicle_documents": false,
|
|
"can_delete_vehicle_fuel_types": false,
|
|
"can_delete_vehicle_mile_and_kms": false,
|
|
"can_delete_vehicle_transmissions": false,
|
|
"can_delete_vehicles": false,
|
|
"can_delete_vendor_credits": false,
|
|
"can_delete_vendors": false,
|
|
"can_update_appointments": false,
|
|
"can_update_bills": false,
|
|
"can_update_check_point_labels": false,
|
|
"can_update_credit_notes": false,
|
|
"can_update_customers": false,
|
|
"can_update_departments": false,
|
|
"can_update_document_types": false,
|
|
"can_update_employees": false,
|
|
"can_update_estimates": false,
|
|
"can_update_expense_items": false,
|
|
"can_update_expenses": false,
|
|
"can_update_holidays": false,
|
|
"can_update_inspection_categories": false,
|
|
"can_update_inspection_check_points": false,
|
|
"can_update_inspections": false,
|
|
"can_update_insurance_types": false,
|
|
"can_update_inventory_adjustments": false,
|
|
"can_update_inventory_categories": false,
|
|
"can_update_invoice_documents": false,
|
|
"can_update_invoice_labels": false,
|
|
"can_update_invoice_notes": false,
|
|
"can_update_invoice_sequences": false,
|
|
"can_update_invoices": false,
|
|
"can_update_job_cards": false,
|
|
"can_update_labels": false,
|
|
"can_update_labor_rates": false,
|
|
"can_update_make_and_models": false,
|
|
"can_update_parts": false,
|
|
"can_update_payment_mades": false,
|
|
"can_update_payment_modes": false,
|
|
"can_update_payment_recieveds": false,
|
|
"can_update_payment_terms": false,
|
|
"can_update_purchase_orders": false,
|
|
"can_update_quick_notes": false,
|
|
"can_update_quick_remarks": false,
|
|
"can_update_reasons": false,
|
|
"can_update_referral_sources": false,
|
|
"can_update_service_group_includes": false,
|
|
"can_update_service_group_parts": false,
|
|
"can_update_service_group_pricings": false,
|
|
"can_update_service_group_services": false,
|
|
"can_update_service_groups": false,
|
|
"can_update_services": false,
|
|
"can_update_settings": false,
|
|
"can_update_shop_calenders": false,
|
|
"can_update_shop_timings": false,
|
|
"can_update_shop_types": false,
|
|
"can_update_task_sections": false,
|
|
"can_update_task_types": false,
|
|
"can_update_tasks": false,
|
|
"can_update_taxes": false,
|
|
"can_update_time_sheets": false,
|
|
"can_update_unit_types": false,
|
|
"can_update_vehicle_body_types": false,
|
|
"can_update_vehicle_colors": false,
|
|
"can_update_vehicle_documents": false,
|
|
"can_update_vehicle_fuel_types": false,
|
|
"can_update_vehicle_mile_and_kms": false,
|
|
"can_update_vehicle_transmissions": false,
|
|
"can_update_vehicles": false,
|
|
"can_update_vendor_credits": false,
|
|
"can_update_vendors": false,
|
|
"can_view_appointments": false,
|
|
"can_view_bills": false,
|
|
"can_view_check_point_labels": false,
|
|
"can_view_credit_notes": false,
|
|
"can_view_customers": false,
|
|
"can_view_departments": false,
|
|
"can_view_document_types": false,
|
|
"can_view_employees": false,
|
|
"can_view_estimates": false,
|
|
"can_view_expense_items": false,
|
|
"can_view_expenses": false,
|
|
"can_view_holidays": false,
|
|
"can_view_inspection_categories": false,
|
|
"can_view_inspection_check_points": false,
|
|
"can_view_inspections": false,
|
|
"can_view_insurance_types": false,
|
|
"can_view_inventory_adjustments": false,
|
|
"can_view_inventory_categories": false,
|
|
"can_view_invoice_documents": false,
|
|
"can_view_invoice_labels": false,
|
|
"can_view_invoice_notes": false,
|
|
"can_view_invoice_sequences": false,
|
|
"can_view_invoices": false,
|
|
"can_view_job_cards": false,
|
|
"can_view_labels": false,
|
|
"can_view_labor_rates": false,
|
|
"can_view_make_and_models": false,
|
|
"can_view_parts": false,
|
|
"can_view_payment_mades": false,
|
|
"can_view_payment_modes": false,
|
|
"can_view_payment_recieveds": false,
|
|
"can_view_payment_terms": false,
|
|
"can_view_purchase_orders": false,
|
|
"can_view_quick_notes": false,
|
|
"can_view_quick_remarks": false,
|
|
"can_view_reasons": false,
|
|
"can_view_referral_sources": false,
|
|
"can_view_service_group_includes": false,
|
|
"can_view_service_group_parts": false,
|
|
"can_view_service_group_pricings": false,
|
|
"can_view_service_group_services": false,
|
|
"can_view_service_groups": false,
|
|
"can_view_services": false,
|
|
"can_view_settings": false,
|
|
"can_view_shop_calenders": false,
|
|
"can_view_shop_timings": false,
|
|
"can_view_shop_types": false,
|
|
"can_view_task_sections": false,
|
|
"can_view_task_types": false,
|
|
"can_view_tasks": false,
|
|
"can_view_taxes": false,
|
|
"can_view_time_sheets": false,
|
|
"can_view_unit_types": false,
|
|
"can_view_vehicle_body_types": false,
|
|
"can_view_vehicle_colors": false,
|
|
"can_view_vehicle_documents": false,
|
|
"can_view_vehicle_fuel_types": false,
|
|
"can_view_vehicle_mile_and_kms": false,
|
|
"can_view_vehicle_transmissions": false,
|
|
"can_view_vehicles": false,
|
|
"can_view_vendor_credits": false,
|
|
"can_view_vendors": false,
|
|
"has_active_time_sheet": false,
|
|
"active_time_sheet": null,
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Service Department"
|
|
},
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T11:00:00.000000Z",
|
|
"role_id": 1,
|
|
"role": {
|
|
"id": 1,
|
|
"name": "Super Admin"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Employees"
|
|
],
|
|
"summary": "Remove the specified employee.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Employee deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/employees/{id}/update-permissions": {
|
|
"post": {
|
|
"tags": [
|
|
"Employees"
|
|
],
|
|
"summary": "Update permissions for the specified employee.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"can_create_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendors": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"can_create_appointments": false,
|
|
"can_create_bills": false,
|
|
"can_create_check_point_labels": false,
|
|
"can_create_credit_notes": false,
|
|
"can_create_customers": false,
|
|
"can_create_departments": false,
|
|
"can_create_document_types": false,
|
|
"can_create_employees": false,
|
|
"can_create_estimates": false,
|
|
"can_create_expense_items": false,
|
|
"can_create_expenses": false,
|
|
"can_create_holidays": false,
|
|
"can_create_inspection_categories": false,
|
|
"can_create_inspection_check_points": false,
|
|
"can_create_inspections": false,
|
|
"can_create_insurance_types": false,
|
|
"can_create_inventory_adjustments": false,
|
|
"can_create_inventory_categories": false,
|
|
"can_create_invoice_documents": false,
|
|
"can_create_invoice_labels": false,
|
|
"can_create_invoice_notes": false,
|
|
"can_create_invoice_sequences": false,
|
|
"can_create_invoices": false,
|
|
"can_create_job_cards": false,
|
|
"can_create_labels": false,
|
|
"can_create_labor_rates": false,
|
|
"can_create_make_and_models": false,
|
|
"can_create_parts": false,
|
|
"can_create_payment_mades": false,
|
|
"can_create_payment_modes": false,
|
|
"can_create_payment_recieveds": false,
|
|
"can_create_payment_terms": false,
|
|
"can_create_purchase_orders": false,
|
|
"can_create_quick_notes": false,
|
|
"can_create_quick_remarks": false,
|
|
"can_create_reasons": false,
|
|
"can_create_referral_sources": false,
|
|
"can_create_service_group_includes": false,
|
|
"can_create_service_group_parts": false,
|
|
"can_create_service_group_pricings": false,
|
|
"can_create_service_group_services": false,
|
|
"can_create_service_groups": false,
|
|
"can_create_services": false,
|
|
"can_create_settings": false,
|
|
"can_create_shop_calenders": false,
|
|
"can_create_shop_timings": false,
|
|
"can_create_shop_types": false,
|
|
"can_create_task_sections": false,
|
|
"can_create_task_types": false,
|
|
"can_create_tasks": false,
|
|
"can_create_taxes": false,
|
|
"can_create_time_sheets": false,
|
|
"can_create_unit_types": false,
|
|
"can_create_vehicle_body_types": false,
|
|
"can_create_vehicle_colors": false,
|
|
"can_create_vehicle_documents": false,
|
|
"can_create_vehicle_fuel_types": false,
|
|
"can_create_vehicle_mile_and_kms": false,
|
|
"can_create_vehicle_transmissions": false,
|
|
"can_create_vehicles": false,
|
|
"can_create_vendor_credits": false,
|
|
"can_create_vendors": false,
|
|
"can_delete_appointments": false,
|
|
"can_delete_bills": false,
|
|
"can_delete_check_point_labels": false,
|
|
"can_delete_credit_notes": false,
|
|
"can_delete_customers": false,
|
|
"can_delete_departments": false,
|
|
"can_delete_document_types": false,
|
|
"can_delete_employees": false,
|
|
"can_delete_estimates": false,
|
|
"can_delete_expense_items": false,
|
|
"can_delete_expenses": false,
|
|
"can_delete_holidays": false,
|
|
"can_delete_inspection_categories": false,
|
|
"can_delete_inspection_check_points": false,
|
|
"can_delete_inspections": false,
|
|
"can_delete_insurance_types": false,
|
|
"can_delete_inventory_adjustments": false,
|
|
"can_delete_inventory_categories": false,
|
|
"can_delete_invoice_documents": false,
|
|
"can_delete_invoice_labels": false,
|
|
"can_delete_invoice_notes": false,
|
|
"can_delete_invoice_sequences": false,
|
|
"can_delete_invoices": false,
|
|
"can_delete_job_cards": false,
|
|
"can_delete_labels": false,
|
|
"can_delete_labor_rates": false,
|
|
"can_delete_make_and_models": false,
|
|
"can_delete_parts": false,
|
|
"can_delete_payment_mades": false,
|
|
"can_delete_payment_modes": false,
|
|
"can_delete_payment_recieveds": false,
|
|
"can_delete_payment_terms": false,
|
|
"can_delete_purchase_orders": false,
|
|
"can_delete_quick_notes": false,
|
|
"can_delete_quick_remarks": false,
|
|
"can_delete_reasons": false,
|
|
"can_delete_referral_sources": false,
|
|
"can_delete_service_group_includes": false,
|
|
"can_delete_service_group_parts": false,
|
|
"can_delete_service_group_pricings": false,
|
|
"can_delete_service_group_services": false,
|
|
"can_delete_service_groups": false,
|
|
"can_delete_services": false,
|
|
"can_delete_settings": false,
|
|
"can_delete_shop_calenders": false,
|
|
"can_delete_shop_timings": false,
|
|
"can_delete_shop_types": false,
|
|
"can_delete_task_sections": false,
|
|
"can_delete_task_types": false,
|
|
"can_delete_tasks": false,
|
|
"can_delete_taxes": false,
|
|
"can_delete_time_sheets": false,
|
|
"can_delete_unit_types": false,
|
|
"can_delete_vehicle_body_types": false,
|
|
"can_delete_vehicle_colors": false,
|
|
"can_delete_vehicle_documents": false,
|
|
"can_delete_vehicle_fuel_types": false,
|
|
"can_delete_vehicle_mile_and_kms": false,
|
|
"can_delete_vehicle_transmissions": false,
|
|
"can_delete_vehicles": false,
|
|
"can_delete_vendor_credits": false,
|
|
"can_delete_vendors": false,
|
|
"can_update_appointments": false,
|
|
"can_update_bills": false,
|
|
"can_update_check_point_labels": false,
|
|
"can_update_credit_notes": false,
|
|
"can_update_customers": false,
|
|
"can_update_departments": false,
|
|
"can_update_document_types": false,
|
|
"can_update_employees": false,
|
|
"can_update_estimates": false,
|
|
"can_update_expense_items": false,
|
|
"can_update_expenses": false,
|
|
"can_update_holidays": false,
|
|
"can_update_inspection_categories": false,
|
|
"can_update_inspection_check_points": false,
|
|
"can_update_inspections": false,
|
|
"can_update_insurance_types": false,
|
|
"can_update_inventory_adjustments": false,
|
|
"can_update_inventory_categories": false,
|
|
"can_update_invoice_documents": false,
|
|
"can_update_invoice_labels": false,
|
|
"can_update_invoice_notes": false,
|
|
"can_update_invoice_sequences": false,
|
|
"can_update_invoices": false,
|
|
"can_update_job_cards": false,
|
|
"can_update_labels": false,
|
|
"can_update_labor_rates": false,
|
|
"can_update_make_and_models": false,
|
|
"can_update_parts": false,
|
|
"can_update_payment_mades": false,
|
|
"can_update_payment_modes": false,
|
|
"can_update_payment_recieveds": false,
|
|
"can_update_payment_terms": false,
|
|
"can_update_purchase_orders": false,
|
|
"can_update_quick_notes": false,
|
|
"can_update_quick_remarks": false,
|
|
"can_update_reasons": false,
|
|
"can_update_referral_sources": false,
|
|
"can_update_service_group_includes": false,
|
|
"can_update_service_group_parts": false,
|
|
"can_update_service_group_pricings": false,
|
|
"can_update_service_group_services": false,
|
|
"can_update_service_groups": false,
|
|
"can_update_services": false,
|
|
"can_update_settings": false,
|
|
"can_update_shop_calenders": false,
|
|
"can_update_shop_timings": false,
|
|
"can_update_shop_types": false,
|
|
"can_update_task_sections": false,
|
|
"can_update_task_types": false,
|
|
"can_update_tasks": false,
|
|
"can_update_taxes": false,
|
|
"can_update_time_sheets": false,
|
|
"can_update_unit_types": false,
|
|
"can_update_vehicle_body_types": false,
|
|
"can_update_vehicle_colors": false,
|
|
"can_update_vehicle_documents": false,
|
|
"can_update_vehicle_fuel_types": false,
|
|
"can_update_vehicle_mile_and_kms": false,
|
|
"can_update_vehicle_transmissions": false,
|
|
"can_update_vehicles": false,
|
|
"can_update_vendor_credits": false,
|
|
"can_update_vendors": false,
|
|
"can_view_appointments": false,
|
|
"can_view_bills": false,
|
|
"can_view_check_point_labels": false,
|
|
"can_view_credit_notes": false,
|
|
"can_view_customers": false,
|
|
"can_view_departments": false,
|
|
"can_view_document_types": false,
|
|
"can_view_employees": false,
|
|
"can_view_estimates": false,
|
|
"can_view_expense_items": false,
|
|
"can_view_expenses": false,
|
|
"can_view_holidays": false,
|
|
"can_view_inspection_categories": false,
|
|
"can_view_inspection_check_points": false,
|
|
"can_view_inspections": false,
|
|
"can_view_insurance_types": false,
|
|
"can_view_inventory_adjustments": false,
|
|
"can_view_inventory_categories": false,
|
|
"can_view_invoice_documents": false,
|
|
"can_view_invoice_labels": false,
|
|
"can_view_invoice_notes": false,
|
|
"can_view_invoice_sequences": false,
|
|
"can_view_invoices": false,
|
|
"can_view_job_cards": false,
|
|
"can_view_labels": false,
|
|
"can_view_labor_rates": false,
|
|
"can_view_make_and_models": false,
|
|
"can_view_parts": false,
|
|
"can_view_payment_mades": false,
|
|
"can_view_payment_modes": false,
|
|
"can_view_payment_recieveds": false,
|
|
"can_view_payment_terms": false,
|
|
"can_view_purchase_orders": false,
|
|
"can_view_quick_notes": false,
|
|
"can_view_quick_remarks": false,
|
|
"can_view_reasons": false,
|
|
"can_view_referral_sources": false,
|
|
"can_view_service_group_includes": false,
|
|
"can_view_service_group_parts": false,
|
|
"can_view_service_group_pricings": false,
|
|
"can_view_service_group_services": false,
|
|
"can_view_service_groups": false,
|
|
"can_view_services": false,
|
|
"can_view_settings": false,
|
|
"can_view_shop_calenders": false,
|
|
"can_view_shop_timings": false,
|
|
"can_view_shop_types": false,
|
|
"can_view_task_sections": false,
|
|
"can_view_task_types": false,
|
|
"can_view_tasks": false,
|
|
"can_view_taxes": false,
|
|
"can_view_time_sheets": false,
|
|
"can_view_unit_types": false,
|
|
"can_view_vehicle_body_types": false,
|
|
"can_view_vehicle_colors": false,
|
|
"can_view_vehicle_documents": false,
|
|
"can_view_vehicle_fuel_types": false,
|
|
"can_view_vehicle_mile_and_kms": false,
|
|
"can_view_vehicle_transmissions": false,
|
|
"can_view_vehicles": false,
|
|
"can_view_vendor_credits": false,
|
|
"can_view_vendors": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "string"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"geo_fence_radius": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"can_create_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_create_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_delete_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_appointments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_bills": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_check_point_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_credit_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_departments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_document_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_employees": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_estimates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expense_items": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_expenses": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_holidays": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspection_check_points": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inspections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_insurance_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_adjustments": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_inventory_categories": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoice_sequences": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_invoices": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_job_cards": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labels": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_labor_rates": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_make_and_models": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_mades": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_modes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_recieveds": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_payment_terms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_purchase_orders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_notes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_quick_remarks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_reasons": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_referral_sources": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_includes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_parts": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_pricings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_group_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_service_groups": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_services": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_settings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_calenders": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_timings": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_shop_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_sections": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_task_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_tasks": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_taxes": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_time_sheets": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_unit_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_body_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_colors": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_documents": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_fuel_types": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_mile_and_kms": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicle_transmissions": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vehicles": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendor_credits": {
|
|
"type": "boolean"
|
|
},
|
|
"can_view_vendors": {
|
|
"type": "boolean"
|
|
},
|
|
"has_active_time_sheet": {
|
|
"type": "boolean"
|
|
},
|
|
"active_time_sheet": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"shop_calender": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"role_id": {
|
|
"type": "integer"
|
|
},
|
|
"role": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Employee permissions updated successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"type": "employee",
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane.smith@example.com",
|
|
"phone": "+971501234567",
|
|
"designation": "Technician",
|
|
"salary": "5000.00",
|
|
"wage_type": "Monthly",
|
|
"country_id": 1,
|
|
"department_id": 1,
|
|
"status": "active",
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"shop_calender_id": null,
|
|
"shop_timing_id": null,
|
|
"geo_fence_radius": null,
|
|
"can_create_appointments": false,
|
|
"can_create_bills": false,
|
|
"can_create_check_point_labels": false,
|
|
"can_create_credit_notes": false,
|
|
"can_create_customers": false,
|
|
"can_create_departments": false,
|
|
"can_create_document_types": false,
|
|
"can_create_employees": false,
|
|
"can_create_estimates": true,
|
|
"can_create_expense_items": false,
|
|
"can_create_expenses": false,
|
|
"can_create_holidays": false,
|
|
"can_create_inspection_categories": false,
|
|
"can_create_inspection_check_points": false,
|
|
"can_create_inspections": false,
|
|
"can_create_insurance_types": false,
|
|
"can_create_inventory_adjustments": false,
|
|
"can_create_inventory_categories": false,
|
|
"can_create_invoice_documents": false,
|
|
"can_create_invoice_labels": false,
|
|
"can_create_invoice_notes": false,
|
|
"can_create_invoice_sequences": false,
|
|
"can_create_invoices": false,
|
|
"can_create_job_cards": false,
|
|
"can_create_labels": false,
|
|
"can_create_labor_rates": false,
|
|
"can_create_make_and_models": false,
|
|
"can_create_parts": false,
|
|
"can_create_payment_mades": false,
|
|
"can_create_payment_modes": false,
|
|
"can_create_payment_recieveds": false,
|
|
"can_create_payment_terms": false,
|
|
"can_create_purchase_orders": false,
|
|
"can_create_quick_notes": false,
|
|
"can_create_quick_remarks": false,
|
|
"can_create_reasons": false,
|
|
"can_create_referral_sources": false,
|
|
"can_create_service_group_includes": false,
|
|
"can_create_service_group_parts": false,
|
|
"can_create_service_group_pricings": false,
|
|
"can_create_service_group_services": false,
|
|
"can_create_service_groups": false,
|
|
"can_create_services": false,
|
|
"can_create_settings": false,
|
|
"can_create_shop_calenders": false,
|
|
"can_create_shop_timings": false,
|
|
"can_create_shop_types": false,
|
|
"can_create_task_sections": false,
|
|
"can_create_task_types": false,
|
|
"can_create_tasks": false,
|
|
"can_create_taxes": false,
|
|
"can_create_time_sheets": false,
|
|
"can_create_unit_types": false,
|
|
"can_create_vehicle_body_types": false,
|
|
"can_create_vehicle_colors": false,
|
|
"can_create_vehicle_documents": false,
|
|
"can_create_vehicle_fuel_types": false,
|
|
"can_create_vehicle_mile_and_kms": false,
|
|
"can_create_vehicle_transmissions": false,
|
|
"can_create_vehicles": false,
|
|
"can_create_vendor_credits": false,
|
|
"can_create_vendors": false,
|
|
"can_delete_appointments": false,
|
|
"can_delete_bills": false,
|
|
"can_delete_check_point_labels": false,
|
|
"can_delete_credit_notes": false,
|
|
"can_delete_customers": false,
|
|
"can_delete_departments": false,
|
|
"can_delete_document_types": false,
|
|
"can_delete_employees": false,
|
|
"can_delete_estimates": false,
|
|
"can_delete_expense_items": false,
|
|
"can_delete_expenses": false,
|
|
"can_delete_holidays": false,
|
|
"can_delete_inspection_categories": false,
|
|
"can_delete_inspection_check_points": false,
|
|
"can_delete_inspections": false,
|
|
"can_delete_insurance_types": false,
|
|
"can_delete_inventory_adjustments": false,
|
|
"can_delete_inventory_categories": false,
|
|
"can_delete_invoice_documents": false,
|
|
"can_delete_invoice_labels": false,
|
|
"can_delete_invoice_notes": false,
|
|
"can_delete_invoice_sequences": false,
|
|
"can_delete_invoices": false,
|
|
"can_delete_job_cards": false,
|
|
"can_delete_labels": false,
|
|
"can_delete_labor_rates": false,
|
|
"can_delete_make_and_models": false,
|
|
"can_delete_parts": false,
|
|
"can_delete_payment_mades": false,
|
|
"can_delete_payment_modes": false,
|
|
"can_delete_payment_recieveds": false,
|
|
"can_delete_payment_terms": false,
|
|
"can_delete_purchase_orders": false,
|
|
"can_delete_quick_notes": false,
|
|
"can_delete_quick_remarks": false,
|
|
"can_delete_reasons": false,
|
|
"can_delete_referral_sources": false,
|
|
"can_delete_service_group_includes": false,
|
|
"can_delete_service_group_parts": false,
|
|
"can_delete_service_group_pricings": false,
|
|
"can_delete_service_group_services": false,
|
|
"can_delete_service_groups": false,
|
|
"can_delete_services": false,
|
|
"can_delete_settings": false,
|
|
"can_delete_shop_calenders": false,
|
|
"can_delete_shop_timings": false,
|
|
"can_delete_shop_types": false,
|
|
"can_delete_task_sections": false,
|
|
"can_delete_task_types": false,
|
|
"can_delete_tasks": false,
|
|
"can_delete_taxes": false,
|
|
"can_delete_time_sheets": false,
|
|
"can_delete_unit_types": false,
|
|
"can_delete_vehicle_body_types": false,
|
|
"can_delete_vehicle_colors": false,
|
|
"can_delete_vehicle_documents": false,
|
|
"can_delete_vehicle_fuel_types": false,
|
|
"can_delete_vehicle_mile_and_kms": false,
|
|
"can_delete_vehicle_transmissions": false,
|
|
"can_delete_vehicles": false,
|
|
"can_delete_vendor_credits": false,
|
|
"can_delete_vendors": false,
|
|
"can_update_appointments": false,
|
|
"can_update_bills": false,
|
|
"can_update_check_point_labels": false,
|
|
"can_update_credit_notes": false,
|
|
"can_update_customers": false,
|
|
"can_update_departments": false,
|
|
"can_update_document_types": false,
|
|
"can_update_employees": false,
|
|
"can_update_estimates": false,
|
|
"can_update_expense_items": false,
|
|
"can_update_expenses": false,
|
|
"can_update_holidays": false,
|
|
"can_update_inspection_categories": false,
|
|
"can_update_inspection_check_points": false,
|
|
"can_update_inspections": false,
|
|
"can_update_insurance_types": false,
|
|
"can_update_inventory_adjustments": false,
|
|
"can_update_inventory_categories": false,
|
|
"can_update_invoice_documents": false,
|
|
"can_update_invoice_labels": false,
|
|
"can_update_invoice_notes": false,
|
|
"can_update_invoice_sequences": false,
|
|
"can_update_invoices": false,
|
|
"can_update_job_cards": false,
|
|
"can_update_labels": false,
|
|
"can_update_labor_rates": false,
|
|
"can_update_make_and_models": false,
|
|
"can_update_parts": false,
|
|
"can_update_payment_mades": false,
|
|
"can_update_payment_modes": false,
|
|
"can_update_payment_recieveds": false,
|
|
"can_update_payment_terms": false,
|
|
"can_update_purchase_orders": false,
|
|
"can_update_quick_notes": false,
|
|
"can_update_quick_remarks": false,
|
|
"can_update_reasons": false,
|
|
"can_update_referral_sources": false,
|
|
"can_update_service_group_includes": false,
|
|
"can_update_service_group_parts": false,
|
|
"can_update_service_group_pricings": false,
|
|
"can_update_service_group_services": false,
|
|
"can_update_service_groups": false,
|
|
"can_update_services": false,
|
|
"can_update_settings": false,
|
|
"can_update_shop_calenders": false,
|
|
"can_update_shop_timings": false,
|
|
"can_update_shop_types": false,
|
|
"can_update_task_sections": false,
|
|
"can_update_task_types": false,
|
|
"can_update_tasks": false,
|
|
"can_update_taxes": false,
|
|
"can_update_time_sheets": false,
|
|
"can_update_unit_types": false,
|
|
"can_update_vehicle_body_types": false,
|
|
"can_update_vehicle_colors": false,
|
|
"can_update_vehicle_documents": false,
|
|
"can_update_vehicle_fuel_types": false,
|
|
"can_update_vehicle_mile_and_kms": false,
|
|
"can_update_vehicle_transmissions": false,
|
|
"can_update_vehicles": false,
|
|
"can_update_vendor_credits": false,
|
|
"can_update_vendors": false,
|
|
"can_view_appointments": false,
|
|
"can_view_bills": false,
|
|
"can_view_check_point_labels": false,
|
|
"can_view_credit_notes": false,
|
|
"can_view_customers": true,
|
|
"can_view_departments": false,
|
|
"can_view_document_types": false,
|
|
"can_view_employees": false,
|
|
"can_view_estimates": false,
|
|
"can_view_expense_items": false,
|
|
"can_view_expenses": false,
|
|
"can_view_holidays": false,
|
|
"can_view_inspection_categories": false,
|
|
"can_view_inspection_check_points": false,
|
|
"can_view_inspections": false,
|
|
"can_view_insurance_types": false,
|
|
"can_view_inventory_adjustments": false,
|
|
"can_view_inventory_categories": false,
|
|
"can_view_invoice_documents": false,
|
|
"can_view_invoice_labels": false,
|
|
"can_view_invoice_notes": false,
|
|
"can_view_invoice_sequences": false,
|
|
"can_view_invoices": false,
|
|
"can_view_job_cards": true,
|
|
"can_view_labels": false,
|
|
"can_view_labor_rates": false,
|
|
"can_view_make_and_models": false,
|
|
"can_view_parts": false,
|
|
"can_view_payment_mades": false,
|
|
"can_view_payment_modes": false,
|
|
"can_view_payment_recieveds": false,
|
|
"can_view_payment_terms": false,
|
|
"can_view_purchase_orders": false,
|
|
"can_view_quick_notes": false,
|
|
"can_view_quick_remarks": false,
|
|
"can_view_reasons": false,
|
|
"can_view_referral_sources": false,
|
|
"can_view_service_group_includes": false,
|
|
"can_view_service_group_parts": false,
|
|
"can_view_service_group_pricings": false,
|
|
"can_view_service_group_services": false,
|
|
"can_view_service_groups": false,
|
|
"can_view_services": false,
|
|
"can_view_settings": false,
|
|
"can_view_shop_calenders": false,
|
|
"can_view_shop_timings": false,
|
|
"can_view_shop_types": false,
|
|
"can_view_task_sections": false,
|
|
"can_view_task_types": false,
|
|
"can_view_tasks": false,
|
|
"can_view_taxes": false,
|
|
"can_view_time_sheets": false,
|
|
"can_view_unit_types": false,
|
|
"can_view_vehicle_body_types": false,
|
|
"can_view_vehicle_colors": false,
|
|
"can_view_vehicle_documents": false,
|
|
"can_view_vehicle_fuel_types": false,
|
|
"can_view_vehicle_mile_and_kms": false,
|
|
"can_view_vehicle_transmissions": false,
|
|
"can_view_vehicles": false,
|
|
"can_view_vendor_credits": false,
|
|
"can_view_vendors": false,
|
|
"has_active_time_sheet": false,
|
|
"active_time_sheet": null,
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Service Department"
|
|
},
|
|
"shop_calender": null,
|
|
"shop_timing": null,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T11:00:00.000000Z",
|
|
"role_id": 1,
|
|
"role": {
|
|
"id": 1,
|
|
"name": "Super Admin"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/auto-generate/{table}": {
|
|
"get": {
|
|
"tags": [
|
|
"Employees"
|
|
],
|
|
"summary": "Auto generate sequence by table.",
|
|
"parameters": [
|
|
{
|
|
"name": "table",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": "ORD-0001"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/roles": {
|
|
"get": {
|
|
"tags": [
|
|
"Roles"
|
|
],
|
|
"summary": "Display a listing of roles.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"can_view_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"name": "Super Admin",
|
|
"description": "System role with full permissions.",
|
|
"can_view_customers": true,
|
|
"can_update_job_cards": true
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 1,
|
|
"per_page": 15,
|
|
"total": 1,
|
|
"from": 1,
|
|
"to": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Roles"
|
|
],
|
|
"summary": "Store a newly created role.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"can_view_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "Workshop Manager",
|
|
"description": "Operational manager role",
|
|
"can_view_customers": true,
|
|
"can_update_job_cards": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"can_view_customers": {
|
|
"type": "boolean"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Role created successfully.",
|
|
"data": {
|
|
"id": 2,
|
|
"name": "Workshop Manager",
|
|
"description": "Operational manager role",
|
|
"can_view_customers": true,
|
|
"can_update_job_cards": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/roles/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Roles"
|
|
],
|
|
"summary": "Update the specified role.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "Workshop Supervisor",
|
|
"description": "Updated role",
|
|
"can_update_job_cards": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"can_update_job_cards": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Role updated successfully.",
|
|
"data": {
|
|
"id": 2,
|
|
"name": "Workshop Supervisor",
|
|
"description": "Updated role",
|
|
"can_update_job_cards": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Roles"
|
|
],
|
|
"summary": "Remove the specified role.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Role deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/unit-types": {
|
|
"get": {
|
|
"tags": [
|
|
"Unit Types"
|
|
],
|
|
"summary": "Display a listing of unit types.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Each",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Unit Types"
|
|
],
|
|
"summary": "Store a newly created unit type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Each"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Each",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/unit-types/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Unit Types"
|
|
],
|
|
"summary": "Update the specified unit type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Each"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Each",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Unit Types"
|
|
],
|
|
"summary": "Remove the specified unit type.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-favorite-unit-type": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Favorite Unit Type"
|
|
],
|
|
"summary": "Mark a unit type as favorite.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Each",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-favorite-unit-type": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Favorite Unit Type"
|
|
],
|
|
"summary": "Remove favorite flag from a unit type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Each",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inventory-categories": {
|
|
"get": {
|
|
"tags": [
|
|
"Inventory Categories"
|
|
],
|
|
"summary": "Display a listing of inventory categories.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"title": "Engine Parts",
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Inventory Categories"
|
|
],
|
|
"summary": "Store a newly created inventory category.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Oil & Fluids",
|
|
"shop_type_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"title": "Engine Parts",
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inventory-categories/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Inventory Categories"
|
|
],
|
|
"summary": "Update the specified inventory category.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Oil & Fluids",
|
|
"shop_type_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"title": "Engine Parts",
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Inventory Categories"
|
|
],
|
|
"summary": "Remove the specified inventory category.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-favorite-inventory-category": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Favorite Inventory Category"
|
|
],
|
|
"summary": "Mark an inventory category as favorite.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"title": "Engine Parts",
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-favorite-inventory-category": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Favorite Inventory Category"
|
|
],
|
|
"summary": "Remove favorite flag from an inventory category.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"title": "Engine Parts",
|
|
"image": "string",
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/labor-rates": {
|
|
"get": {
|
|
"tags": [
|
|
"Labor Rates"
|
|
],
|
|
"summary": "Display a listing of labor rates.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Standard Labor Rate",
|
|
"rate": 50,
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Labor Rates"
|
|
],
|
|
"summary": "Store a newly created labor rate.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Standard Labor",
|
|
"rate": 75
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Labor Rate",
|
|
"rate": 50,
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/labor-rates/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Labor Rates"
|
|
],
|
|
"summary": "Update the specified labor rate.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Standard Labor",
|
|
"rate": 75
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Labor Rate",
|
|
"rate": 50,
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Labor Rates"
|
|
],
|
|
"summary": "Remove the specified labor rate.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-favorite-labor-rate": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Favorite Labor Rate"
|
|
],
|
|
"summary": "Mark a labor rate as favorite.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Labor Rate",
|
|
"rate": 50,
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-favorite-labor-rate": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Favorite Labor Rate"
|
|
],
|
|
"summary": "Remove favorite flag from a labor rate.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Labor Rate",
|
|
"rate": 50,
|
|
"is_favorite": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendors": {
|
|
"get": {
|
|
"tags": [
|
|
"Vendors"
|
|
],
|
|
"summary": "Display a listing of vendors.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "Ali",
|
|
"last_name": "Hassan",
|
|
"company_name": "Hassan Parts Co.",
|
|
"email": "ali@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Vendors"
|
|
],
|
|
"summary": "Store a newly created vendor.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"first_name": "Ali",
|
|
"last_name": "Hassan",
|
|
"company_name": "Hassan Parts Co.",
|
|
"email": "ali@example.com",
|
|
"phone": "+971501234567",
|
|
"payment_terms_id": 1,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "Ali",
|
|
"last_name": "Hassan",
|
|
"company_name": "Hassan Parts Co.",
|
|
"email": "ali@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendors/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Vendors"
|
|
],
|
|
"summary": "Update the specified vendor.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"first_name": "Ali",
|
|
"last_name": "Hassan",
|
|
"company_name": "Hassan Parts Co.",
|
|
"email": "ali@example.com",
|
|
"phone": "+971501234567",
|
|
"payment_terms_id": 1,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "Ali",
|
|
"last_name": "Hassan",
|
|
"company_name": "Hassan Parts Co.",
|
|
"email": "ali@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Vendors"
|
|
],
|
|
"summary": "Remove the specified vendor.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/toggle-vendor-status": {
|
|
"post": {
|
|
"tags": [
|
|
"Toggle Vendor Status"
|
|
],
|
|
"summary": "POST /api/toggle-vendor-status",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "Ali",
|
|
"last_name": "Hassan",
|
|
"company_name": "Hassan Parts Co.",
|
|
"email": "ali@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/create-vendor-address": {
|
|
"post": {
|
|
"tags": [
|
|
"Create Vendor Address"
|
|
],
|
|
"summary": "POST /api/create-vendor-address",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"address_line_2": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"phone_number": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"vendor_id": 1,
|
|
"address_line_1": "123 Main Street",
|
|
"address_line_2": "Suite 100",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "00000",
|
|
"phone_number": "+971501234567"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"salutation": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"company_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternate_phone": {
|
|
"type": "string"
|
|
},
|
|
"opening_balance": {
|
|
"type": "integer"
|
|
},
|
|
"credit_limit": {
|
|
"type": "integer"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"referral_source_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"salutation": "Mr.",
|
|
"first_name": "Ali",
|
|
"last_name": "Hassan",
|
|
"company_name": "Hassan Parts Co.",
|
|
"email": "ali@example.com",
|
|
"phone": "+971501234567",
|
|
"alternate_phone": "string",
|
|
"opening_balance": 0,
|
|
"credit_limit": 0,
|
|
"website": "string",
|
|
"referral_source_id": 1,
|
|
"payment_terms_id": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendor-address/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Vendor Address"
|
|
],
|
|
"summary": "GET /api/vendor-address/{id}",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"address_line_1": {
|
|
"type": "string"
|
|
},
|
|
"address_line_2": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"phone_number": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"country": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"state": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"vendor_id": 1,
|
|
"title": "Main warehouse",
|
|
"address_line_1": "123 Industrial Rd",
|
|
"address_line_2": null,
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "00000",
|
|
"phone_number": "+971501234567",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"country": {
|
|
"id": 1,
|
|
"name": "United Arab Emirates"
|
|
},
|
|
"state": {
|
|
"id": 1,
|
|
"name": "Dubai"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspection-categories": {
|
|
"get": {
|
|
"tags": [
|
|
"Inspection Categories"
|
|
],
|
|
"summary": "GET /api/inspection-categories",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_name": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"item_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_matrix": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"inspection_name": "Safety Inspection",
|
|
"inventory_category_id": 1,
|
|
"shop_type_id": 1,
|
|
"item_code": "INSP-CAT-001",
|
|
"unit_type_id": 1,
|
|
"labor_matrix": "string",
|
|
"description": "string",
|
|
"department_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"sales_chart_of_account": "string",
|
|
"selling_price": 100,
|
|
"labor_hours": 1,
|
|
"sales_information": true,
|
|
"purchase_information": false,
|
|
"purchase_price": 1,
|
|
"purchase_chart_of_account": "string",
|
|
"vendor_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Inspection Categories"
|
|
],
|
|
"summary": "Store a newly created inspection category.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Pre-Service Inspection",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"department_id": 1,
|
|
"inspection_category_id": 1,
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"time": "09:00",
|
|
"note": "string",
|
|
"status": "in_progress"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_name": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"item_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_matrix": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"inspection_name": "Safety Inspection",
|
|
"inventory_category_id": 1,
|
|
"shop_type_id": 1,
|
|
"item_code": "INSP-CAT-001",
|
|
"unit_type_id": 1,
|
|
"labor_matrix": "string",
|
|
"description": "string",
|
|
"department_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"sales_chart_of_account": "string",
|
|
"selling_price": 100,
|
|
"labor_hours": 1,
|
|
"sales_information": true,
|
|
"purchase_information": false,
|
|
"purchase_price": 1,
|
|
"purchase_chart_of_account": "string",
|
|
"vendor_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspection-categories/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Inspection Categories"
|
|
],
|
|
"summary": "Update the specified inspection category.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Pre-Service Inspection",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"department_id": 1,
|
|
"inspection_category_id": 1,
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"time": "09:00",
|
|
"note": "string",
|
|
"status": "in_progress"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_name": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"item_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_matrix": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"inspection_name": "Safety Inspection",
|
|
"inventory_category_id": 1,
|
|
"shop_type_id": 1,
|
|
"item_code": "INSP-CAT-001",
|
|
"unit_type_id": 1,
|
|
"labor_matrix": "string",
|
|
"description": "string",
|
|
"department_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"sales_chart_of_account": "string",
|
|
"selling_price": 100,
|
|
"labor_hours": 1,
|
|
"sales_information": true,
|
|
"purchase_information": false,
|
|
"purchase_price": 1,
|
|
"purchase_chart_of_account": "string",
|
|
"vendor_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Inspection Categories"
|
|
],
|
|
"summary": "Remove the specified inspection category.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspections": {
|
|
"get": {
|
|
"tags": [
|
|
"Inspections"
|
|
],
|
|
"summary": "Display a listing of inspections.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"working_hours": {
|
|
"type": "string"
|
|
},
|
|
"labor_hours": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"pivot": {
|
|
"type": "object",
|
|
"properties": {
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"label_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"job_card": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"inspection_category": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"labor_rate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Pre-Service Inspection",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"employee_id": 1,
|
|
"order_number": "INSP-001",
|
|
"date": "2026-03-31",
|
|
"time": "09:00:00",
|
|
"note": "Initial walk-around.",
|
|
"status": "in_progress",
|
|
"job_card_id": 1,
|
|
"inspection_category_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"quantity": 1,
|
|
"rate": "120.00",
|
|
"working_hours": "2.50",
|
|
"labor_hours": "2.00",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-123",
|
|
"department_id": 1,
|
|
"description": "Full vehicle inspection.",
|
|
"labels": [
|
|
{
|
|
"id": 1,
|
|
"title": "Safety",
|
|
"color_code": "#e63946",
|
|
"pivot": {
|
|
"inspection_id": 1,
|
|
"label_id": 1
|
|
}
|
|
}
|
|
],
|
|
"job_card": {
|
|
"id": 1,
|
|
"title": "JC-001",
|
|
"order_number": "ORD-1001"
|
|
},
|
|
"inspection_category": {
|
|
"id": 1,
|
|
"inspection_name": "Pre-Delivery"
|
|
},
|
|
"labor_rate": {
|
|
"id": 1,
|
|
"title": "Standard",
|
|
"rate": "95.00",
|
|
"is_favorite": true
|
|
},
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75,
|
|
"from": 1,
|
|
"to": 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Inspections"
|
|
],
|
|
"summary": "Store a newly created inspection.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"working_hours": {
|
|
"type": "number"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Pre-Service Inspection",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"employee_id": 1,
|
|
"department_id": 1,
|
|
"inspection_category_id": 1,
|
|
"order_number": "INSP-001",
|
|
"date": "2026-03-31",
|
|
"time": "09:00:00",
|
|
"note": "Initial walk-around notes.",
|
|
"status": "in_progress",
|
|
"job_card_id": null,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"quantity": 1,
|
|
"rate": 120,
|
|
"working_hours": 2.5,
|
|
"labor_hours": 2,
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-123",
|
|
"description": "Full vehicle inspection."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"inspection_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"working_hours": {
|
|
"type": "string"
|
|
},
|
|
"labor_hours": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"job_card": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"inspection_category": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"labor_rate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Inspection created successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Pre-Service Inspection",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"employee_id": 1,
|
|
"order_number": "INSP-001",
|
|
"date": "2026-03-31",
|
|
"time": "09:00:00",
|
|
"note": "Initial walk-around notes.",
|
|
"status": "in_progress",
|
|
"job_card_id": null,
|
|
"inspection_category_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"quantity": 1,
|
|
"rate": "120.00",
|
|
"working_hours": "2.50",
|
|
"labor_hours": "2.00",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-123",
|
|
"department_id": 1,
|
|
"description": "Full vehicle inspection.",
|
|
"labels": [],
|
|
"job_card": null,
|
|
"inspection_category": {
|
|
"id": 1,
|
|
"inspection_name": "Pre-Delivery"
|
|
},
|
|
"labor_rate": {
|
|
"id": 1,
|
|
"title": "Standard",
|
|
"rate": "95.00",
|
|
"is_favorite": true
|
|
},
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspections/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Inspections"
|
|
],
|
|
"summary": "Update the specified inspection.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "number"
|
|
},
|
|
"working_hours": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "number"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Pre-Service Inspection (updated)",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"employee_id": 1,
|
|
"department_id": 1,
|
|
"inspection_category_id": 1,
|
|
"order_number": "INSP-001",
|
|
"date": "2026-03-31",
|
|
"time": "10:30:00",
|
|
"note": "Updated notes.",
|
|
"status": "completed",
|
|
"job_card_id": 1,
|
|
"rate_type": "hourly",
|
|
"labor_rate_id": 2,
|
|
"quantity": 2,
|
|
"rate": 135.5,
|
|
"working_hours": 3,
|
|
"labor_hours": 2.75,
|
|
"tax": "8%",
|
|
"chart_of_account": "COA-456",
|
|
"description": "Inspection completed."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"working_hours": {
|
|
"type": "string"
|
|
},
|
|
"labor_hours": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"job_card": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"inspection_category": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"labor_rate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"is_favorite": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Inspection updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Pre-Service Inspection (updated)",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"employee_id": 1,
|
|
"order_number": "INSP-001",
|
|
"date": "2026-03-31",
|
|
"time": "10:30:00",
|
|
"note": "Updated notes.",
|
|
"status": "completed",
|
|
"job_card_id": 1,
|
|
"inspection_category_id": 1,
|
|
"rate_type": "hourly",
|
|
"labor_rate_id": 2,
|
|
"quantity": 2,
|
|
"rate": "135.50",
|
|
"working_hours": "3.00",
|
|
"labor_hours": "2.75",
|
|
"tax": "8%",
|
|
"chart_of_account": "COA-456",
|
|
"department_id": 1,
|
|
"description": "Inspection completed.",
|
|
"labels": [],
|
|
"job_card": {
|
|
"id": 1,
|
|
"title": "JC-001",
|
|
"order_number": "ORD-1001"
|
|
},
|
|
"inspection_category": {
|
|
"id": 1,
|
|
"inspection_name": "Pre-Delivery"
|
|
},
|
|
"labor_rate": {
|
|
"id": 2,
|
|
"title": "Premium",
|
|
"rate": "110.00",
|
|
"is_favorite": false
|
|
},
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T11:30:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Inspections"
|
|
],
|
|
"summary": "Remove the specified inspection.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Inspection deleted successfully"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspections/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Inspections"
|
|
],
|
|
"summary": "POST /api/inspections/{id}/add-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Attachment(s) added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Pre-Service Inspection",
|
|
"attachments": [
|
|
{
|
|
"id": 1,
|
|
"inspection_id": 1,
|
|
"file_path": "inspection_attachments/photo.jpg",
|
|
"created_at": "2026-03-31T12:00:00.000000Z",
|
|
"updated_at": "2026-03-31T12:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspections/{id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Inspections"
|
|
],
|
|
"summary": "DELETE /api/inspections/{id}/delete-attachment",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Attachment deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Pre-Service Inspection",
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspections/{id}/get-attachment": {
|
|
"get": {
|
|
"tags": [
|
|
"Inspections"
|
|
],
|
|
"summary": "GET /api/inspections/{id}/get-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"inspection_id": 1,
|
|
"file_path": "inspection_attachments/photo.jpg",
|
|
"url": "http://localhost/storage/inspection_attachments/photo.jpg",
|
|
"created_at": "2026-03-31T12:00:00.000000Z",
|
|
"updated_at": "2026-03-31T12:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspections/{id}/add-label": {
|
|
"post": {
|
|
"tags": [
|
|
"Inspections"
|
|
],
|
|
"summary": "POST /api/inspections/{id}/add-label",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"label_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"label_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Label added to inspection successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Pre-Service Inspection",
|
|
"labels": [
|
|
{
|
|
"id": 1,
|
|
"title": "Safety",
|
|
"color_code": "#e63946"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspections/{id}/delete-label": {
|
|
"post": {
|
|
"tags": [
|
|
"Inspections"
|
|
],
|
|
"summary": "POST /api/inspections/{id}/delete-label",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"label_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"label_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Label removed from inspection successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Pre-Service Inspection",
|
|
"labels": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/change-inspection-status": {
|
|
"post": {
|
|
"tags": [
|
|
"Change Inspection Status"
|
|
],
|
|
"summary": "POST /api/change-inspection-status",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1,
|
|
"status": "in_progress"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Pre-Service Inspection",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"department_id": 1,
|
|
"inspection_category_id": 1,
|
|
"employee_id": 1,
|
|
"order_number": "INSP-001",
|
|
"date": "2026-03-31",
|
|
"time": "09:00",
|
|
"note": "string",
|
|
"status": "in_progress",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/labels": {
|
|
"get": {
|
|
"tags": [
|
|
"Labels"
|
|
],
|
|
"summary": "Display a listing of labels.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Labels"
|
|
],
|
|
"summary": "Store a newly created label.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/labels/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Labels"
|
|
],
|
|
"summary": "Update the specified label.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Labels"
|
|
],
|
|
"summary": "Remove the specified label.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/insurance-types": {
|
|
"get": {
|
|
"tags": [
|
|
"Insurance Types"
|
|
],
|
|
"summary": "Display a listing of insurance types.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Comprehensive",
|
|
"description": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Insurance Types"
|
|
],
|
|
"summary": "Store a newly created insurance type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Third Party",
|
|
"description": "Third party insurance coverage."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Comprehensive",
|
|
"description": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/insurance-types/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Insurance Types"
|
|
],
|
|
"summary": "Update the specified insurance type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Third Party",
|
|
"description": "Third party insurance coverage."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Comprehensive",
|
|
"description": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Insurance Types"
|
|
],
|
|
"summary": "Remove the specified insurance type.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimates/{id}/link-appointment": {
|
|
"post": {
|
|
"tags": [
|
|
"Appointments & estimate attachments"
|
|
],
|
|
"summary": "POST /api/estimates/{id}/link-appointment",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"appointment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"appointment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimates/{id}/unlink-appointment": {
|
|
"post": {
|
|
"tags": [
|
|
"Appointments & estimate attachments"
|
|
],
|
|
"summary": "POST /api/estimates/{id}/unlink-appointment",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"appointment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"appointment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimates/{id}/store-authorisation": {
|
|
"post": {
|
|
"tags": [
|
|
"Appointments & estimate attachments"
|
|
],
|
|
"summary": "POST /api/estimates/{id}/store-authorisation",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"estimate_services": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"estimate_parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"estimate_inspections": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"estimate_expense_items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"authorisation_method": {
|
|
"type": "string"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"estimate_services": [
|
|
{
|
|
"id": 11,
|
|
"status": "accepted"
|
|
},
|
|
{
|
|
"id": 12,
|
|
"status": "rejected"
|
|
}
|
|
],
|
|
"estimate_parts": [
|
|
{
|
|
"id": 21,
|
|
"status": "accepted"
|
|
}
|
|
],
|
|
"estimate_inspections": [
|
|
{
|
|
"id": 31,
|
|
"status": "pending"
|
|
}
|
|
],
|
|
"estimate_expense_items": [
|
|
{
|
|
"id": 41,
|
|
"status": "accepted"
|
|
}
|
|
],
|
|
"authorisation_method": "in_person",
|
|
"employee_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"estimate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"is_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"authorisation_date": {
|
|
"type": "string"
|
|
},
|
|
"authorisation_time": {
|
|
"type": "string"
|
|
},
|
|
"authorisation_method": {
|
|
"type": "string"
|
|
},
|
|
"total_accepted": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"updated_counts": {
|
|
"type": "object",
|
|
"properties": {
|
|
"services": {
|
|
"type": "integer"
|
|
},
|
|
"parts": {
|
|
"type": "integer"
|
|
},
|
|
"inspections": {
|
|
"type": "integer"
|
|
},
|
|
"expense_items": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"histories_count": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Estimate authorisation stored successfully",
|
|
"data": {
|
|
"estimate": {
|
|
"id": 1,
|
|
"is_authorisation": true,
|
|
"authorisation_date": "2026-04-13",
|
|
"authorisation_time": "14:30:00",
|
|
"authorisation_method": "in_person",
|
|
"total_accepted": 5
|
|
},
|
|
"updated_counts": {
|
|
"services": 2,
|
|
"parts": 1,
|
|
"inspections": 1,
|
|
"expense_items": 1
|
|
},
|
|
"histories_count": 6
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimates/{id}/update-invoice": {
|
|
"post": {
|
|
"tags": [
|
|
"Appointments & estimate attachments"
|
|
],
|
|
"summary": "POST /api/estimates/{id}/update-invoice",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"invoice_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"invoice": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"invoice_inpsection_categories": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"inspection_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"invoice_services": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"invoice_expenses": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"expense_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"synced_counts": {
|
|
"type": "object",
|
|
"properties": {
|
|
"services": {
|
|
"type": "integer"
|
|
},
|
|
"parts": {
|
|
"type": "integer"
|
|
},
|
|
"inspections": {
|
|
"type": "integer"
|
|
},
|
|
"expense_items": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Invoice synced from estimate successfully.",
|
|
"data": {
|
|
"invoice": {
|
|
"id": 1,
|
|
"estimate_id": 1,
|
|
"invoice_parts": [
|
|
{
|
|
"part_id": 1,
|
|
"quantity": "2.00",
|
|
"rate": "45.50"
|
|
}
|
|
],
|
|
"invoice_inpsection_categories": [
|
|
{
|
|
"inspection_category_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"rate": "80.00"
|
|
}
|
|
],
|
|
"invoice_services": [
|
|
{
|
|
"service_id": 1,
|
|
"quantity": "1.00",
|
|
"rate": "120.00"
|
|
}
|
|
],
|
|
"invoice_expenses": [
|
|
{
|
|
"expense_id": 1,
|
|
"quantity": "1.00",
|
|
"rate": "25.00"
|
|
}
|
|
]
|
|
},
|
|
"synced_counts": {
|
|
"services": 1,
|
|
"parts": 1,
|
|
"inspections": 1,
|
|
"expense_items": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimates/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Appointments & estimate attachments"
|
|
],
|
|
"summary": "POST /api/estimates/{id}/add-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimates/{id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Appointments & estimate attachments"
|
|
],
|
|
"summary": "DELETE /api/estimates/{id}/delete-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimates/{id}/get-attachment": {
|
|
"get": {
|
|
"tags": [
|
|
"Appointments & estimate attachments"
|
|
],
|
|
"summary": "GET /api/estimates/{id}/get-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/documents": {
|
|
"get": {
|
|
"tags": [
|
|
"Estimate documents"
|
|
],
|
|
"summary": "GET /api/estimate/{id}/documents",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Estimate documents"
|
|
],
|
|
"summary": "POST /api/estimate/{id}/documents",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"vehicle_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/documents/{document_id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Estimate documents"
|
|
],
|
|
"summary": "PUT /api/estimate/{id}/documents/{document_id}",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"vehicle_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "document_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Estimate documents"
|
|
],
|
|
"summary": "DELETE /api/estimate/{id}/documents/{document_id}",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "document_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/services": {
|
|
"get": {
|
|
"tags": [
|
|
"Estimate services (estimate_services)"
|
|
],
|
|
"summary": "GET /api/estimate/{id}/services",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Estimate services (estimate_services)"
|
|
],
|
|
"summary": "POST /api/estimate/{id}/services",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"working_hours": {
|
|
"type": "string"
|
|
},
|
|
"labor_hours": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"quantity": 1,
|
|
"rate": "120.00",
|
|
"working_hours": "1.00",
|
|
"labor_hours": "1.00",
|
|
"tax": "5",
|
|
"chart_of_account": "4000",
|
|
"department_id": 1,
|
|
"description": "Labor line"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/services/{service_id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Estimate services (estimate_services)"
|
|
],
|
|
"summary": "PUT /api/estimate/{id}/services/{service_id}",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"rate": "130.00",
|
|
"quantity": 2
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "service_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Estimate services (estimate_services)"
|
|
],
|
|
"summary": "DELETE /api/estimate/{id}/services/{service_id}",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "service_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/services/{service_id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Estimate services (estimate_services)"
|
|
],
|
|
"summary": "POST /api/estimate/{id}/services/{service_id}/add-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "service_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/services/{service_id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Estimate services (estimate_services)"
|
|
],
|
|
"summary": "DELETE /api/estimate/{id}/services/{service_id}/delete-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "service_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/services/{service_id}/get-attachment": {
|
|
"get": {
|
|
"tags": [
|
|
"Estimate services (estimate_services)"
|
|
],
|
|
"summary": "GET /api/estimate/{id}/services/{service_id}/get-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "service_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/parts": {
|
|
"get": {
|
|
"tags": [
|
|
"Estimate parts (estimate_parts)"
|
|
],
|
|
"summary": "GET /api/estimate/{id}/parts",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Estimate parts (estimate_parts)"
|
|
],
|
|
"summary": "POST /api/estimate/{id}/parts",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"part_id": 1,
|
|
"quantity": 2,
|
|
"rate": "45.50",
|
|
"tax": "5",
|
|
"chart_of_account": "5000",
|
|
"department_id": 1,
|
|
"description": "Oil filter"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/parts/{part_id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Estimate parts (estimate_parts)"
|
|
],
|
|
"summary": "PUT /api/estimate/{id}/parts/{part_id}",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"quantity": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"quantity": 3
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "part_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Estimate parts (estimate_parts)"
|
|
],
|
|
"summary": "DELETE /api/estimate/{id}/parts/{part_id}",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "part_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/parts/{part_id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Estimate parts (estimate_parts)"
|
|
],
|
|
"summary": "POST /api/estimate/{id}/parts/{part_id}/add-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "part_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/parts/{part_id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Estimate parts (estimate_parts)"
|
|
],
|
|
"summary": "DELETE /api/estimate/{id}/parts/{part_id}/delete-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "part_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/parts/{part_id}/get-attachment": {
|
|
"get": {
|
|
"tags": [
|
|
"Estimate parts (estimate_parts)"
|
|
],
|
|
"summary": "GET /api/estimate/{id}/parts/{part_id}/get-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "part_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/expense-items": {
|
|
"get": {
|
|
"tags": [
|
|
"Estimate expense items (estimate_expense_items)"
|
|
],
|
|
"summary": "GET /api/estimate/{id}/expense-items",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Estimate expense items (estimate_expense_items)"
|
|
],
|
|
"summary": "POST /api/estimate/{id}/expense-items",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"expense_item_id": 1,
|
|
"quantity": 1,
|
|
"rate": "25.00",
|
|
"tax": "5",
|
|
"chart_of_account": "6000",
|
|
"department_id": 1,
|
|
"description": "Shop supplies"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/expense-items/{expense_item_id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Estimate expense items (estimate_expense_items)"
|
|
],
|
|
"summary": "PUT /api/estimate/{id}/expense-items/{expense_item_id}",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"quantity": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"quantity": 2
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "expense_item_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Estimate expense items (estimate_expense_items)"
|
|
],
|
|
"summary": "DELETE /api/estimate/{id}/expense-items/{expense_item_id}",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "expense_item_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/expense-items/{expense_item_id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Estimate expense items (estimate_expense_items)"
|
|
],
|
|
"summary": "POST /api/estimate/{id}/expense-items/{expense_item_id}/add-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "expense_item_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/expense-items/{expense_item_id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Estimate expense items (estimate_expense_items)"
|
|
],
|
|
"summary": "DELETE /api/estimate/{id}/expense-items/{expense_item_id}/delete-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "expense_item_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimate/{id}/expense-items/{expense_item_id}/get-attachment": {
|
|
"get": {
|
|
"tags": [
|
|
"Estimate expense items (estimate_expense_items)"
|
|
],
|
|
"summary": "GET /api/estimate/{id}/expense-items/{expense_item_id}/get-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "expense_item_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimates": {
|
|
"get": {
|
|
"tags": [
|
|
"Estimates"
|
|
],
|
|
"summary": "Display a listing of estimates.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"footer": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"pivot": {
|
|
"type": "object",
|
|
"properties": {
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"label_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"customer_remarks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"remark": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Estimate for Toyota Camry",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"department_id": 1,
|
|
"estimate_number": "EST-001",
|
|
"date": "2026-03-31",
|
|
"has_insurance": false,
|
|
"enable_digital_authorisation": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"service_writer_id": 1,
|
|
"footer": null,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"labels": [
|
|
{
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"pivot": {
|
|
"estimate_id": 1,
|
|
"label_id": 1
|
|
}
|
|
}
|
|
],
|
|
"customer_remarks": [
|
|
{
|
|
"id": 1,
|
|
"estimate_id": 1,
|
|
"remark": "Oil change recommended.",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75,
|
|
"from": 1,
|
|
"to": 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Estimates"
|
|
],
|
|
"summary": "Store a newly created estimate.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"footer": {
|
|
"type": "string"
|
|
},
|
|
"label_ids": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"remarks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Estimate for Toyota Camry",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"department_id": 1,
|
|
"estimate_number": "EST-001",
|
|
"date": "2026-03-31",
|
|
"has_insurance": false,
|
|
"enable_digital_authorisation": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"service_writer_id": 1,
|
|
"footer": "Thank you for your business.",
|
|
"label_ids": [
|
|
1,
|
|
2
|
|
],
|
|
"remarks": [
|
|
"Oil change recommended."
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"footer": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"pivot": {
|
|
"type": "object",
|
|
"properties": {
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"label_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"customer_remarks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"remark": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Estimate created successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Estimate for Toyota Camry",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"department_id": 1,
|
|
"estimate_number": "EST-001",
|
|
"date": "2026-03-31",
|
|
"has_insurance": false,
|
|
"enable_digital_authorisation": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"service_writer_id": 1,
|
|
"footer": "Thank you for your business.",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"labels": [
|
|
{
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"pivot": {
|
|
"estimate_id": 1,
|
|
"label_id": 1
|
|
}
|
|
}
|
|
],
|
|
"customer_remarks": [
|
|
{
|
|
"id": 1,
|
|
"estimate_id": 1,
|
|
"remark": "Oil change recommended.",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/estimates/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Estimates"
|
|
],
|
|
"summary": "Update the specified estimate.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"insurer_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"footer": {
|
|
"type": "string"
|
|
},
|
|
"label_ids": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"remarks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Estimate for Toyota Camry (updated)",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"department_id": 1,
|
|
"estimate_number": "EST-001",
|
|
"date": "2026-03-31",
|
|
"has_insurance": true,
|
|
"enable_digital_authorisation": false,
|
|
"insurance_type_id": 1,
|
|
"insurer_id": 1,
|
|
"service_writer_id": 1,
|
|
"footer": "Updated footer text.",
|
|
"label_ids": [
|
|
1
|
|
],
|
|
"remarks": [
|
|
"Updated remark."
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"insurer_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"footer": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"pivot": {
|
|
"type": "object",
|
|
"properties": {
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"label_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"customer_remarks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"remark": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Estimate updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Estimate for Toyota Camry (updated)",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"department_id": 1,
|
|
"estimate_number": "EST-001",
|
|
"date": "2026-03-31",
|
|
"has_insurance": true,
|
|
"enable_digital_authorisation": false,
|
|
"insurance_type_id": 1,
|
|
"insurer_id": 1,
|
|
"service_writer_id": 1,
|
|
"footer": "Updated footer text.",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T11:00:00.000000Z",
|
|
"labels": [
|
|
{
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"pivot": {
|
|
"estimate_id": 1,
|
|
"label_id": 1
|
|
}
|
|
}
|
|
],
|
|
"customer_remarks": [
|
|
{
|
|
"id": 2,
|
|
"estimate_id": 1,
|
|
"remark": "Updated remark.",
|
|
"created_at": "2026-03-31T11:00:00.000000Z",
|
|
"updated_at": "2026-03-31T11:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Estimates"
|
|
],
|
|
"summary": "Remove the specified estimate.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Estimate deleted successfully"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/quick-remark": {
|
|
"get": {
|
|
"tags": [
|
|
"Quick Remark"
|
|
],
|
|
"summary": "Display a listing of quick remarks.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"description": "Please check tire pressure",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Quick Remark"
|
|
],
|
|
"summary": "Store a newly created quick remark.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"description": "Check oil level."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"description": "Please check tire pressure",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/quick-remark/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Quick Remark"
|
|
],
|
|
"summary": "Update the specified quick remark.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"description": "Check oil level."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"description": "Please check tire pressure",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Quick Remark"
|
|
],
|
|
"summary": "Remove the specified quick remark.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/quick-notes": {
|
|
"get": {
|
|
"tags": [
|
|
"Quick Notes"
|
|
],
|
|
"summary": "Display a listing of quick notes.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"description": "Customer requests synthetic oil",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Quick Notes"
|
|
],
|
|
"summary": "Store a newly created quick note.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"description": "Customer requested faster service."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"description": "Customer requests synthetic oil",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/quick-notes/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Quick Notes"
|
|
],
|
|
"summary": "Update the specified quick note.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"description": "Customer requested faster service."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"description": "Customer requests synthetic oil",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Quick Notes"
|
|
],
|
|
"summary": "Remove the specified quick note.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/shop-recommendations": {
|
|
"get": {
|
|
"tags": [
|
|
"Shop Recommendations"
|
|
],
|
|
"summary": "Display a listing of shop recommendations.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"description": "Recommend wheel alignment and tire rotation at next visit.",
|
|
"created_at": "2026-04-06T12:00:00.000000Z",
|
|
"updated_at": "2026-04-06T12:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 1,
|
|
"per_page": 15,
|
|
"total": 1,
|
|
"from": 1,
|
|
"to": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Shop Recommendations"
|
|
],
|
|
"summary": "Store a newly created shop recommendation.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"description": "Customer should replace brake pads within 2,000 km."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Shop recommendation created successfully.",
|
|
"data": {
|
|
"id": 2,
|
|
"description": "Customer should replace brake pads within 2,000 km.",
|
|
"created_at": "2026-04-06T12:10:00.000000Z",
|
|
"updated_at": "2026-04-06T12:10:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/shop-recommendations/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Shop Recommendations"
|
|
],
|
|
"summary": "Update the specified shop recommendation.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"description": "Customer should replace front and rear brake pads within 2,000 km."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Shop recommendation updated successfully.",
|
|
"data": {
|
|
"id": 2,
|
|
"description": "Customer should replace front and rear brake pads within 2,000 km.",
|
|
"created_at": "2026-04-06T12:10:00.000000Z",
|
|
"updated_at": "2026-04-06T12:20:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Shop Recommendations"
|
|
],
|
|
"summary": "Remove the specified shop recommendation.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Shop recommendation deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/check-point-label": {
|
|
"get": {
|
|
"tags": [
|
|
"Check Point Label"
|
|
],
|
|
"summary": "Display a listing of check point labels.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Safety Check",
|
|
"color_code": "#00FF00",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Check Point Label"
|
|
],
|
|
"summary": "Store a newly created check point label.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Pass",
|
|
"color_code": "#00FF00"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Safety Check",
|
|
"color_code": "#00FF00",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/check-point-label/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Check Point Label"
|
|
],
|
|
"summary": "Update the specified check point label.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Pass",
|
|
"color_code": "#00FF00"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Safety Check",
|
|
"color_code": "#00FF00",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Check Point Label"
|
|
],
|
|
"summary": "Remove the specified check point label.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspection-check-points": {
|
|
"get": {
|
|
"tags": [
|
|
"Inspection Check Points"
|
|
],
|
|
"summary": "Display a listing of inspection check points.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"record_type": {
|
|
"type": "string"
|
|
},
|
|
"condition_rate": {
|
|
"type": "integer"
|
|
},
|
|
"file": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"inspection_id": 1,
|
|
"name": "Engine Oil Level",
|
|
"description": "Check oil level and condition",
|
|
"record_type": "record_conditions",
|
|
"condition_rate": 1,
|
|
"file": "string",
|
|
"status": "not_inspected",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Inspection Check Points"
|
|
],
|
|
"summary": "Store a newly created inspection check point.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"record_type": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"inspection_id": 1,
|
|
"name": "Engine Oil Level",
|
|
"description": "string",
|
|
"record_type": "record_conditions",
|
|
"status": "not_inspected"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"record_type": {
|
|
"type": "string"
|
|
},
|
|
"condition_rate": {
|
|
"type": "integer"
|
|
},
|
|
"file": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"inspection_id": 1,
|
|
"name": "Engine Oil Level",
|
|
"description": "Check oil level and condition",
|
|
"record_type": "record_conditions",
|
|
"condition_rate": 1,
|
|
"file": "string",
|
|
"status": "not_inspected",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspection-check-points/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Inspection Check Points"
|
|
],
|
|
"summary": "Update the specified inspection check point.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"record_type": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"inspection_id": 1,
|
|
"name": "Engine Oil Level",
|
|
"description": "string",
|
|
"record_type": "record_conditions",
|
|
"status": "not_inspected"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"record_type": {
|
|
"type": "string"
|
|
},
|
|
"condition_rate": {
|
|
"type": "integer"
|
|
},
|
|
"file": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"inspection_id": 1,
|
|
"name": "Engine Oil Level",
|
|
"description": "Check oil level and condition",
|
|
"record_type": "record_conditions",
|
|
"condition_rate": 1,
|
|
"file": "string",
|
|
"status": "not_inspected",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Inspection Check Points"
|
|
],
|
|
"summary": "Remove the specified inspection check point.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspection-check-points/change-status": {
|
|
"post": {
|
|
"tags": [
|
|
"Inspection Check Points"
|
|
],
|
|
"summary": "POST /api/inspection-check-points/change-status",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"inspection_check_point_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"inspection_check_point_id": 1,
|
|
"status": "passed"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"record_type": {
|
|
"type": "string"
|
|
},
|
|
"condition_rate": {
|
|
"type": "integer"
|
|
},
|
|
"file": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"inspection_id": 1,
|
|
"name": "Engine Oil Level",
|
|
"description": "Check oil level and condition",
|
|
"record_type": "record_conditions",
|
|
"condition_rate": 1,
|
|
"file": "string",
|
|
"status": "not_inspected",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspection-check-points/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Inspection Check Points"
|
|
],
|
|
"summary": "POST /api/inspection-check-points/add-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"inspection_check_point_id": {
|
|
"type": "string"
|
|
},
|
|
"attachment": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"record_type": {
|
|
"type": "string"
|
|
},
|
|
"condition_rate": {
|
|
"type": "integer"
|
|
},
|
|
"file": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"inspection_id": 1,
|
|
"name": "Engine Oil Level",
|
|
"description": "Check oil level and condition",
|
|
"record_type": "record_conditions",
|
|
"condition_rate": 1,
|
|
"file": "string",
|
|
"status": "not_inspected",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspection-check-points/{id}/upload-media": {
|
|
"post": {
|
|
"tags": [
|
|
"Inspection Check Points"
|
|
],
|
|
"summary": "Upload or replace media file for a check point (record_audio, record_video, capture_photo).",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"record_type": {
|
|
"type": "string"
|
|
},
|
|
"condition_rate": {
|
|
"type": "integer"
|
|
},
|
|
"file": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"inspection_id": 1,
|
|
"name": "Engine Oil Level",
|
|
"description": "Check oil level and condition",
|
|
"record_type": "record_conditions",
|
|
"condition_rate": 1,
|
|
"file": "string",
|
|
"status": "not_inspected",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inspection-check-points/{id}/media": {
|
|
"delete": {
|
|
"tags": [
|
|
"Inspection Check Points"
|
|
],
|
|
"summary": "Remove the current media file for a check point (set file to null; file is deleted from storage).",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/toggle-label-to-checkpoint": {
|
|
"post": {
|
|
"tags": [
|
|
"Toggle Label To Checkpoint"
|
|
],
|
|
"summary": "POST /api/toggle-label-to-checkpoint",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"inspection_check_point_id": {
|
|
"type": "integer"
|
|
},
|
|
"check_point_label_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"inspection_check_point_id": 1,
|
|
"check_point_label_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"inspection_id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"record_type": {
|
|
"type": "string"
|
|
},
|
|
"condition_rate": {
|
|
"type": "integer"
|
|
},
|
|
"file": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"inspection_id": 1,
|
|
"name": "Engine Oil Level",
|
|
"description": "Check oil level and condition",
|
|
"record_type": "record_conditions",
|
|
"condition_rate": 1,
|
|
"file": "string",
|
|
"status": "not_inspected",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards": {
|
|
"get": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Display a listing of job cards.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_person_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"primary_technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"footer": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"estimate_to": {
|
|
"type": "string"
|
|
},
|
|
"enable_parts_issuing": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"check_in_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"start_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"attachments": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"discount_type": {
|
|
"type": "string"
|
|
},
|
|
"discount_at": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"pivot": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"label_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"documents": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"show_in_invoice": {
|
|
"type": "boolean"
|
|
},
|
|
"show_in_estimate": {
|
|
"type": "boolean"
|
|
},
|
|
"show_in_statement": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"service_writer": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "string"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"geo_fence_radius": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"has_active_time_sheet": {
|
|
"type": "boolean"
|
|
},
|
|
"active_time_sheet": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"sales_person": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "string"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"geo_fence_radius": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"has_active_time_sheet": {
|
|
"type": "boolean"
|
|
},
|
|
"active_time_sheet": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"primary_technician": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
},
|
|
"salary": {
|
|
"type": "string"
|
|
},
|
|
"wage_type": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"track_attendance": {
|
|
"type": "boolean"
|
|
},
|
|
"notify_owner_when_punch_in_out": {
|
|
"type": "boolean"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"shop_timing_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"geo_fence_radius": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"has_active_time_sheet": {
|
|
"type": "boolean"
|
|
},
|
|
"active_time_sheet": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"purchase_orders_count": {
|
|
"type": "integer"
|
|
},
|
|
"bills_count": {
|
|
"type": "integer"
|
|
},
|
|
"expenses_count": {
|
|
"type": "integer"
|
|
},
|
|
"tasks_count": {
|
|
"type": "integer"
|
|
},
|
|
"appointments_count": {
|
|
"type": "integer"
|
|
},
|
|
"inspections_count": {
|
|
"type": "integer"
|
|
},
|
|
"services_count": {
|
|
"type": "integer"
|
|
},
|
|
"parts_count": {
|
|
"type": "integer"
|
|
},
|
|
"expense_items_count": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"sales_person_id": 3,
|
|
"order_number": "ORD-001",
|
|
"estimate_number": "EST-001",
|
|
"order_date": "2026-03-31T00:00:00.000000Z",
|
|
"service_writer_id": 1,
|
|
"primary_technician_id": 2,
|
|
"status": "check_in",
|
|
"footer": null,
|
|
"has_insurance": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"estimate_to": "Customer",
|
|
"enable_parts_issuing": false,
|
|
"enable_digital_authorisation": false,
|
|
"department_id": 1,
|
|
"check_in_date": "2026-03-31T00:00:00.000000Z",
|
|
"check_in_time": "2026-03-31T00:00:00.000000Z",
|
|
"km_in": 50000,
|
|
"fuel_level": "full",
|
|
"start_date": null,
|
|
"start_time": null,
|
|
"delivery_date": null,
|
|
"delivery_time": null,
|
|
"attachments": null,
|
|
"tax_inclusive": "Tax Exclusive",
|
|
"discount_type": "no",
|
|
"discount_at": "inclusive_of_tax",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"labels": [
|
|
{
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"pivot": {
|
|
"job_card_id": 1,
|
|
"label_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
],
|
|
"documents": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"document_number": "DOC-001",
|
|
"show_in_invoice": true,
|
|
"show_in_estimate": false,
|
|
"show_in_statement": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"service_writer": {
|
|
"id": 1,
|
|
"type": "employee",
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane.smith@example.com",
|
|
"phone": "+971501234567",
|
|
"designation": "Service Advisor",
|
|
"salary": "5000.00",
|
|
"wage_type": "Monthly",
|
|
"country_id": 1,
|
|
"department_id": 1,
|
|
"status": "active",
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"shop_calender_id": null,
|
|
"shop_timing_id": null,
|
|
"geo_fence_radius": null,
|
|
"has_active_time_sheet": false,
|
|
"active_time_sheet": null
|
|
},
|
|
"sales_person": {
|
|
"id": 3,
|
|
"type": "employee",
|
|
"first_name": "Sam",
|
|
"last_name": "Jones",
|
|
"email": "sam.jones@example.com",
|
|
"phone": "+971501234567",
|
|
"designation": "Sales",
|
|
"salary": "5000.00",
|
|
"wage_type": "Monthly",
|
|
"country_id": 1,
|
|
"department_id": 1,
|
|
"status": "active",
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"shop_calender_id": null,
|
|
"shop_timing_id": null,
|
|
"geo_fence_radius": null,
|
|
"has_active_time_sheet": false,
|
|
"active_time_sheet": null
|
|
},
|
|
"primary_technician": {
|
|
"id": 2,
|
|
"type": "employee",
|
|
"first_name": "Alex",
|
|
"last_name": "Kumar",
|
|
"email": "alex.kumar@example.com",
|
|
"phone": "+971501234567",
|
|
"designation": "Technician",
|
|
"salary": "5000.00",
|
|
"wage_type": "Monthly",
|
|
"country_id": 1,
|
|
"department_id": 1,
|
|
"status": "active",
|
|
"track_attendance": false,
|
|
"notify_owner_when_punch_in_out": false,
|
|
"shop_calender_id": null,
|
|
"shop_timing_id": null,
|
|
"geo_fence_radius": null,
|
|
"has_active_time_sheet": false,
|
|
"active_time_sheet": null
|
|
},
|
|
"purchase_orders_count": 0,
|
|
"bills_count": 0,
|
|
"expenses_count": 0,
|
|
"tasks_count": 0,
|
|
"appointments_count": 0,
|
|
"inspections_count": 0,
|
|
"services_count": 0,
|
|
"parts_count": 0,
|
|
"expense_items_count": 0
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75,
|
|
"from": 1,
|
|
"to": 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Store a newly created job card.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"primary_technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"footer": {
|
|
"type": "string"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"estimate_to": {
|
|
"type": "string"
|
|
},
|
|
"enable_parts_issuing": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"check_in_date": {
|
|
"type": "string"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string"
|
|
},
|
|
"start_time": {
|
|
"type": "string"
|
|
},
|
|
"delivery_date": {
|
|
"type": "string"
|
|
},
|
|
"delivery_time": {
|
|
"type": "string"
|
|
},
|
|
"attachments": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"discount_type": {
|
|
"type": "string"
|
|
},
|
|
"discount_at": {
|
|
"type": "string"
|
|
},
|
|
"label_ids": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"documents": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"show_in_invoice": {
|
|
"type": "boolean"
|
|
},
|
|
"show_in_estimate": {
|
|
"type": "boolean"
|
|
},
|
|
"show_in_statement": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"customer_remarks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"estimate_id": 1,
|
|
"order_number": "ORD-001",
|
|
"estimate_number": "EST-001",
|
|
"order_date": "2026-03-31",
|
|
"service_writer_id": 1,
|
|
"primary_technician_id": 2,
|
|
"status": "check_in",
|
|
"footer": "Thank you for your business.",
|
|
"has_insurance": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"estimate_to": "Customer",
|
|
"enable_parts_issuing": false,
|
|
"enable_digital_authorisation": false,
|
|
"department_id": 1,
|
|
"check_in_date": "2026-03-31",
|
|
"check_in_time": "09:00",
|
|
"km_in": 50000,
|
|
"fuel_level": "full",
|
|
"start_date": "2026-03-31",
|
|
"start_time": "09:00",
|
|
"delivery_date": "2026-04-05",
|
|
"delivery_time": "17:00",
|
|
"attachments": null,
|
|
"tax_inclusive": "Tax Exclusive",
|
|
"discount_type": "no",
|
|
"discount_at": "inclusive_of_tax",
|
|
"label_ids": [
|
|
1
|
|
],
|
|
"documents": [
|
|
{
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"document_number": "DOC-001",
|
|
"show_in_invoice": true,
|
|
"show_in_estimate": false,
|
|
"show_in_statement": false
|
|
}
|
|
],
|
|
"customer_remarks": [
|
|
"Customer prefers morning pickup."
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_person_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"primary_technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"footer": {
|
|
"type": "string"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"estimate_to": {
|
|
"type": "string"
|
|
},
|
|
"enable_parts_issuing": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"check_in_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"start_time": {
|
|
"type": "string"
|
|
},
|
|
"delivery_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"delivery_time": {
|
|
"type": "string"
|
|
},
|
|
"attachments": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"discount_type": {
|
|
"type": "string"
|
|
},
|
|
"discount_at": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"pivot": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"label_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"documents": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"show_in_invoice": {
|
|
"type": "boolean"
|
|
},
|
|
"show_in_estimate": {
|
|
"type": "boolean"
|
|
},
|
|
"show_in_statement": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"customer_remarks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"remark": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"attachment_files": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Job card created successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"estimate_id": 1,
|
|
"sales_person_id": 3,
|
|
"order_number": "ORD-001",
|
|
"estimate_number": "EST-001",
|
|
"order_date": "2026-03-31T00:00:00.000000Z",
|
|
"service_writer_id": 1,
|
|
"primary_technician_id": 2,
|
|
"status": "check_in",
|
|
"footer": "Thank you for your business.",
|
|
"has_insurance": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"estimate_to": "Customer",
|
|
"enable_parts_issuing": false,
|
|
"enable_digital_authorisation": false,
|
|
"department_id": 1,
|
|
"check_in_date": "2026-03-31T00:00:00.000000Z",
|
|
"check_in_time": "09:00",
|
|
"km_in": 50000,
|
|
"fuel_level": "full",
|
|
"start_date": "2026-03-31T00:00:00.000000Z",
|
|
"start_time": "09:00",
|
|
"delivery_date": "2026-04-05T00:00:00.000000Z",
|
|
"delivery_time": "17:00",
|
|
"attachments": null,
|
|
"tax_inclusive": "Tax Exclusive",
|
|
"discount_type": "no",
|
|
"discount_at": "inclusive_of_tax",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"labels": [
|
|
{
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"pivot": {
|
|
"job_card_id": 1,
|
|
"label_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
],
|
|
"documents": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"document_number": "DOC-001",
|
|
"show_in_invoice": true,
|
|
"show_in_estimate": false,
|
|
"show_in_statement": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"customer_remarks": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"remark": "Customer prefers morning pickup.",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"attachment_files": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "GET /api/job-cards/{id}",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_person_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"primary_technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"footer": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"estimate_to": {
|
|
"type": "string"
|
|
},
|
|
"enable_parts_issuing": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"check_in_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"start_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"attachments": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"discount_type": {
|
|
"type": "string"
|
|
},
|
|
"discount_at": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"customer": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"vehicle": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"plate_number": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"documents": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"customer_remarks": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"shop_recommendations": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"attachment_files": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"purchase_orders": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"bills": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"expenses": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"tasks": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"appointments": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"service_writer": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"designation": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"sales_person": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"primary_technician": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"sales_person_id": 3,
|
|
"order_number": "ORD-001",
|
|
"estimate_number": "EST-001",
|
|
"order_date": "2026-03-31T00:00:00.000000Z",
|
|
"service_writer_id": 1,
|
|
"primary_technician_id": 2,
|
|
"status": "check_in",
|
|
"footer": null,
|
|
"has_insurance": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"estimate_to": "Customer",
|
|
"enable_parts_issuing": false,
|
|
"enable_digital_authorisation": false,
|
|
"department_id": 1,
|
|
"check_in_date": "2026-03-31T00:00:00.000000Z",
|
|
"check_in_time": "09:00:00",
|
|
"km_in": 50000,
|
|
"fuel_level": "full",
|
|
"start_date": null,
|
|
"start_time": null,
|
|
"delivery_date": null,
|
|
"delivery_time": null,
|
|
"attachments": null,
|
|
"tax_inclusive": "Tax Exclusive",
|
|
"discount_type": "no",
|
|
"discount_at": "inclusive_of_tax",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"labels": [],
|
|
"customer": {
|
|
"id": 1,
|
|
"first_name": "John",
|
|
"last_name": "Doe",
|
|
"phone": "+971501234567"
|
|
},
|
|
"vehicle": {
|
|
"id": 1,
|
|
"plate_number": "ABC-100"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Workshop"
|
|
},
|
|
"documents": [],
|
|
"customer_remarks": [],
|
|
"shop_recommendations": [],
|
|
"attachment_files": [],
|
|
"purchase_orders": [],
|
|
"bills": [],
|
|
"expenses": [],
|
|
"tasks": [],
|
|
"appointments": [],
|
|
"service_writer": {
|
|
"id": 1,
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"designation": "Service Advisor"
|
|
},
|
|
"sales_person": {
|
|
"id": 3,
|
|
"first_name": "Sam",
|
|
"last_name": "Jones"
|
|
},
|
|
"primary_technician": {
|
|
"id": 2,
|
|
"first_name": "Alex",
|
|
"last_name": "Kumar"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Update the specified job card.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"estimate_to": {
|
|
"type": "string"
|
|
},
|
|
"tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"discount_type": {
|
|
"type": "string"
|
|
},
|
|
"discount_at": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"check_in_date": {
|
|
"type": "string"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"title": "Job Card 001",
|
|
"status": "check_in",
|
|
"estimate_to": "Customer",
|
|
"tax_inclusive": "Tax Exclusive",
|
|
"discount_type": "no",
|
|
"discount_at": "inclusive_of_tax",
|
|
"department_id": 1,
|
|
"check_in_date": "2026-03-31",
|
|
"check_in_time": "09:00",
|
|
"km_in": 50000,
|
|
"fuel_level": "full",
|
|
"service_writer_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"primary_technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"footer": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"estimate_to": {
|
|
"type": "string"
|
|
},
|
|
"enable_parts_issuing": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"check_in_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"start_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"attachments": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"discount_type": {
|
|
"type": "string"
|
|
},
|
|
"discount_at": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"labels": {
|
|
"type": "array",
|
|
"items": {}
|
|
},
|
|
"documents": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Job card updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"order_number": "ORD-001",
|
|
"estimate_number": "EST-001",
|
|
"order_date": "2026-03-31T00:00:00.000000Z",
|
|
"service_writer_id": 1,
|
|
"primary_technician_id": 2,
|
|
"status": "check_in",
|
|
"footer": null,
|
|
"has_insurance": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"estimate_to": "Customer",
|
|
"enable_parts_issuing": false,
|
|
"enable_digital_authorisation": false,
|
|
"department_id": 1,
|
|
"check_in_date": "2026-03-31T00:00:00.000000Z",
|
|
"check_in_time": "09:00",
|
|
"km_in": 50000,
|
|
"fuel_level": "full",
|
|
"start_date": null,
|
|
"start_time": null,
|
|
"delivery_date": null,
|
|
"delivery_time": null,
|
|
"attachments": null,
|
|
"tax_inclusive": "Tax Exclusive",
|
|
"discount_type": "no",
|
|
"discount_at": "inclusive_of_tax",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T11:00:00.000000Z",
|
|
"labels": [],
|
|
"documents": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Remove the specified job card.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Job card deleted successfully"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/change-date": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/change-date",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"order_date": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"order_date": "2026-03-31"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"primary_technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"footer": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"estimate_to": {
|
|
"type": "string"
|
|
},
|
|
"enable_parts_issuing": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"check_in_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"start_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"attachments": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"discount_type": {
|
|
"type": "string"
|
|
},
|
|
"discount_at": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Job card date updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"order_number": "ORD-001",
|
|
"estimate_number": "EST-001",
|
|
"order_date": "2026-03-31T00:00:00.000000Z",
|
|
"service_writer_id": 1,
|
|
"primary_technician_id": 2,
|
|
"status": "check_in",
|
|
"footer": null,
|
|
"has_insurance": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"estimate_to": "Customer",
|
|
"enable_parts_issuing": false,
|
|
"enable_digital_authorisation": false,
|
|
"department_id": 1,
|
|
"check_in_date": "2026-03-31T00:00:00.000000Z",
|
|
"check_in_time": "09:00",
|
|
"km_in": 50000,
|
|
"fuel_level": "full",
|
|
"start_date": null,
|
|
"start_time": null,
|
|
"delivery_date": null,
|
|
"delivery_time": null,
|
|
"attachments": null,
|
|
"tax_inclusive": "Tax Exclusive",
|
|
"discount_type": "no",
|
|
"discount_at": "inclusive_of_tax",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:05:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/change-status": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/change-status",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"status": "check_in"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"estimate_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"primary_technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"footer": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurance_type_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"insurer_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"estimate_to": {
|
|
"type": "string"
|
|
},
|
|
"enable_parts_issuing": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"check_in_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"start_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_date": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delivery_time": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"attachments": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"discount_type": {
|
|
"type": "string"
|
|
},
|
|
"discount_at": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Job card status updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"order_number": "ORD-001",
|
|
"estimate_number": "EST-001",
|
|
"order_date": "2026-03-31T00:00:00.000000Z",
|
|
"service_writer_id": 1,
|
|
"primary_technician_id": 2,
|
|
"status": "check_in",
|
|
"footer": null,
|
|
"has_insurance": false,
|
|
"insurance_type_id": null,
|
|
"insurer_id": null,
|
|
"estimate_to": "Customer",
|
|
"enable_parts_issuing": false,
|
|
"enable_digital_authorisation": false,
|
|
"department_id": 1,
|
|
"check_in_date": "2026-04-02T00:00:00.000000Z",
|
|
"check_in_time": "14:30:00",
|
|
"km_in": 50000,
|
|
"fuel_level": "full",
|
|
"start_date": null,
|
|
"start_time": null,
|
|
"delivery_date": null,
|
|
"delivery_time": null,
|
|
"attachments": null,
|
|
"tax_inclusive": "Tax Exclusive",
|
|
"discount_type": "no",
|
|
"discount_at": "inclusive_of_tax",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-04-02T14:30:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/check-in": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/check-in",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"check_in_date": {
|
|
"type": "string"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string"
|
|
},
|
|
"start_time": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_date": {
|
|
"type": "string"
|
|
},
|
|
"delivery_time": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"check_in_date": "2026-04-07",
|
|
"check_in_time": "09:30",
|
|
"km_in": 50321,
|
|
"fuel_level": "half",
|
|
"start_date": "2026-04-07",
|
|
"start_time": "10:00",
|
|
"department_id": 1,
|
|
"delivery_date": "2026-04-08",
|
|
"delivery_time": "17:15"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"check_in_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"check_in_time": {
|
|
"type": "string"
|
|
},
|
|
"km_in": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"start_time": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_date": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"delivery_time": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Job card checked in successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"status": "check_in",
|
|
"check_in_date": "2026-04-07T00:00:00.000000Z",
|
|
"check_in_time": "09:30:00",
|
|
"km_in": 50321,
|
|
"fuel_level": "half",
|
|
"start_date": "2026-04-07T00:00:00.000000Z",
|
|
"start_time": "10:00:00",
|
|
"department_id": 1,
|
|
"delivery_date": "2026-04-08T00:00:00.000000Z",
|
|
"delivery_time": "17:15:00"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delivery": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/delivery",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"check_out_date": {
|
|
"type": "string"
|
|
},
|
|
"check_out_time": {
|
|
"type": "string"
|
|
},
|
|
"km_out": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"check_out_date": "2026-04-08",
|
|
"check_out_time": "17:15",
|
|
"km_out": 50480,
|
|
"fuel_level": "quarter",
|
|
"department_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"check_out_date": {
|
|
"type": "string"
|
|
},
|
|
"check_out_time": {
|
|
"type": "string"
|
|
},
|
|
"km_out": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_level": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Job card marked as delivered successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"status": "delivered",
|
|
"check_out_date": "2026-04-08",
|
|
"check_out_time": "17:15:00",
|
|
"km_out": 50480,
|
|
"fuel_level": "quarter",
|
|
"department_id": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-customer-remark": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/add-customer-remark",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"remark": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"remark": "Customer wants OEM parts only."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_remarks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"remark": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Customer remark added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"customer_remarks": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"remark": "Customer wants OEM parts only.",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/edit-customer-remark": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Edit an existing customer remark for the job card.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"customer_remark_id": {
|
|
"type": "integer"
|
|
},
|
|
"remark": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"customer_remark_id": 1,
|
|
"remark": "Updated remark."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_remarks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"remark": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Customer remark updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"customer_remarks": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"remark": "Updated remark.",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T11:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-customer-remark": {
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Delete a customer remark. Query or body: customer_remark_id",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"customer_remark_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"customer_remark_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"customer_remarks": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Customer remark deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"customer_remarks": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/get-internal-notes": {
|
|
"get": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "GET /api/job-cards/{id}/get-internal-notes",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"note": "Parts on back order — call customer Tuesday.",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 1,
|
|
"per_page": 15,
|
|
"total": 1,
|
|
"from": 1,
|
|
"to": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-internal-note": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/add-internal-note",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"note": "Parts on back order — call customer Tuesday."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"internal_notes": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Internal note added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"internal_notes": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"note": "Parts on back order — call customer Tuesday.",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T10:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/edit-internal-note": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/edit-internal-note",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"internal_note_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"internal_note_id": 1,
|
|
"note": "Updated internal note text."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"internal_notes": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Internal note updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"internal_notes": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"note": "Updated internal note text.",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T11:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-internal-note": {
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "DELETE /api/job-cards/{id}/delete-internal-note",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"internal_note_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"internal_note_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"internal_notes": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Internal note deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"internal_notes": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/get-services": {
|
|
"get": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "GET /api/job-cards/{id}/get-services",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"working_hours": {
|
|
"type": "string"
|
|
},
|
|
"labor_hours": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"service": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"labor_rate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"service_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"quantity": 1,
|
|
"rate": "85.00",
|
|
"working_hours": "1.00",
|
|
"labor_hours": "1.00",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-200",
|
|
"department_id": 1,
|
|
"description": "Oil change labor line",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T10:00:00.000000Z",
|
|
"service": {
|
|
"id": 1,
|
|
"labor_name": "Oil Change",
|
|
"service_code": "SVC-001"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Workshop"
|
|
},
|
|
"labor_rate": {
|
|
"id": 1,
|
|
"title": "Standard",
|
|
"rate": "95.00"
|
|
},
|
|
"attachments": []
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 1,
|
|
"per_page": 15,
|
|
"total": 1,
|
|
"from": 1,
|
|
"to": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-service": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/add-service",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"working_hours": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_id": 1,
|
|
"department_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"quantity": 1,
|
|
"rate": 85,
|
|
"working_hours": 1,
|
|
"labor_hours": 1,
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-200",
|
|
"description": "Oil change labor line"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"working_hours": {
|
|
"type": "string"
|
|
},
|
|
"labor_hours": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"service": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"labor_rate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Service line added to job card successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"service_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"quantity": 1,
|
|
"rate": "85.00",
|
|
"working_hours": "1.00",
|
|
"labor_hours": "1.00",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-200",
|
|
"department_id": 1,
|
|
"description": "Oil change labor line",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T10:00:00.000000Z",
|
|
"service": {
|
|
"id": 1,
|
|
"labor_name": "Oil Change",
|
|
"service_code": "SVC-001"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Workshop"
|
|
},
|
|
"labor_rate": {
|
|
"id": 1,
|
|
"title": "Standard",
|
|
"rate": "95.00"
|
|
},
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/update-service": {
|
|
"put": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "PUT /api/job-cards/{id}/update-service",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_service_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_service_id": 1,
|
|
"quantity": 2,
|
|
"rate": 90,
|
|
"description": "Updated description"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"working_hours": {
|
|
"type": "string"
|
|
},
|
|
"labor_hours": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"service": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"labor_rate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Service line updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"service_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"quantity": 2,
|
|
"rate": "90.00",
|
|
"working_hours": "1.00",
|
|
"labor_hours": "1.00",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-200",
|
|
"department_id": 1,
|
|
"description": "Updated description",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T11:00:00.000000Z",
|
|
"service": {
|
|
"id": 1,
|
|
"labor_name": "Oil Change",
|
|
"service_code": "SVC-001"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Workshop"
|
|
},
|
|
"labor_rate": {
|
|
"id": 1,
|
|
"title": "Standard",
|
|
"rate": "95.00"
|
|
},
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-service": {
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "DELETE /api/job-cards/{id}/delete-service",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_service_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_service_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Service line deleted successfully"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-service-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/add-service-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_service_id": {
|
|
"type": "string"
|
|
},
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_service_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Service attachment(s) added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"service_id": 1,
|
|
"attachments": [
|
|
{
|
|
"id": 1,
|
|
"job_card_service_id": 1,
|
|
"file_path": "job_card_service_attachments/abc.pdf",
|
|
"created_at": "2026-04-04T12:00:00.000000Z",
|
|
"updated_at": "2026-04-04T12:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-service-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "DELETE /api/job-cards/{id}/delete-service-attachment",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_service_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_service_id": 1,
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Service attachment deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"service_id": 1,
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/get-service-attachment": {
|
|
"get": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "GET /api/job-cards/{id}/get-service-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_service_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_service_id": 1,
|
|
"file_path": "job_card_service_attachments/abc.pdf",
|
|
"url": "http://localhost/storage/job_card_service_attachments/abc.pdf",
|
|
"created_at": "2026-04-04T12:00:00.000000Z",
|
|
"updated_at": "2026-04-04T12:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/get-parts": {
|
|
"get": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "GET /api/job-cards/{id}/get-parts",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"part": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 2,
|
|
"rate": "45.00",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-300",
|
|
"department_id": 1,
|
|
"description": "Brake pads",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T10:00:00.000000Z",
|
|
"part": {
|
|
"id": 1,
|
|
"title": "Brake Pad Set",
|
|
"sku": "BP-100"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Parts"
|
|
},
|
|
"attachments": []
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 1,
|
|
"per_page": 15,
|
|
"total": 1,
|
|
"from": 1,
|
|
"to": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-part": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/add-part",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"part_id": 1,
|
|
"department_id": 1,
|
|
"quantity": 2,
|
|
"rate": 45,
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-300",
|
|
"description": "Brake pads"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"part": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Part line added to job card successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 2,
|
|
"rate": "45.00",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-300",
|
|
"department_id": 1,
|
|
"description": "Brake pads",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T10:00:00.000000Z",
|
|
"part": {
|
|
"id": 1,
|
|
"title": "Brake Pad Set",
|
|
"sku": "BP-100"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Parts"
|
|
},
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/update-part": {
|
|
"put": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "PUT /api/job-cards/{id}/update-part",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "number"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_part_id": 1,
|
|
"quantity": 3,
|
|
"rate": 48.5,
|
|
"description": "Updated qty"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"part": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Part line updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 3,
|
|
"rate": "48.50",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-300",
|
|
"department_id": 1,
|
|
"description": "Updated qty",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T11:00:00.000000Z",
|
|
"part": {
|
|
"id": 1,
|
|
"title": "Brake Pad Set",
|
|
"sku": "BP-100"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Parts"
|
|
},
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-part": {
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "DELETE /api/job-cards/{id}/delete-part",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_part_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_part_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Part line deleted successfully"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-part-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/add-part-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_part_id": {
|
|
"type": "string"
|
|
},
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_part_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Part attachment(s) added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"part_id": 1,
|
|
"attachments": [
|
|
{
|
|
"id": 1,
|
|
"job_card_part_id": 1,
|
|
"file_path": "job_card_part_attachments/invoice.pdf",
|
|
"created_at": "2026-04-04T12:00:00.000000Z",
|
|
"updated_at": "2026-04-04T12:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-part-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "DELETE /api/job-cards/{id}/delete-part-attachment",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_part_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_part_id": 1,
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Part attachment deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"part_id": 1,
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/get-part-attachment": {
|
|
"get": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "GET /api/job-cards/{id}/get-part-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_part_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_part_id": 1,
|
|
"file_path": "job_card_part_attachments/invoice.pdf",
|
|
"url": "http://localhost/storage/job_card_part_attachments/invoice.pdf",
|
|
"created_at": "2026-04-04T12:00:00.000000Z",
|
|
"updated_at": "2026-04-04T12:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/get-expense-items": {
|
|
"get": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "GET /api/job-cards/{id}/get-expense-items",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"expense_item": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"item_name": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"expense_item_id": 1,
|
|
"quantity": 1,
|
|
"rate": "120.00",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-400",
|
|
"department_id": 1,
|
|
"description": "Shop supplies",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T10:00:00.000000Z",
|
|
"expense_item": {
|
|
"id": 1,
|
|
"item_name": "Supplies",
|
|
"sku": "EXP-001"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Admin"
|
|
},
|
|
"attachments": []
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 1,
|
|
"per_page": 15,
|
|
"total": 1,
|
|
"from": 1,
|
|
"to": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-expense-item": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/add-expense-item",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"expense_item_id": 1,
|
|
"department_id": 1,
|
|
"quantity": 1,
|
|
"rate": 120,
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-400",
|
|
"description": "Shop supplies"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"expense_item": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"item_name": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Expense item line added to job card successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"expense_item_id": 1,
|
|
"quantity": 1,
|
|
"rate": "120.00",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-400",
|
|
"department_id": 1,
|
|
"description": "Shop supplies",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T10:00:00.000000Z",
|
|
"expense_item": {
|
|
"id": 1,
|
|
"item_name": "Supplies",
|
|
"sku": "EXP-001"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Admin"
|
|
},
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/update-expense-item": {
|
|
"put": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "PUT /api/job-cards/{id}/update-expense-item",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "number"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_expense_item_id": 1,
|
|
"quantity": 2,
|
|
"rate": 125.5,
|
|
"description": "Updated line"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"tax": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"expense_item": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"item_name": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"department": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Expense item line updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"expense_item_id": 1,
|
|
"quantity": 2,
|
|
"rate": "125.50",
|
|
"tax": "5%",
|
|
"chart_of_account": "COA-400",
|
|
"department_id": 1,
|
|
"description": "Updated line",
|
|
"created_at": "2026-04-04T10:00:00.000000Z",
|
|
"updated_at": "2026-04-04T11:00:00.000000Z",
|
|
"expense_item": {
|
|
"id": 1,
|
|
"item_name": "Supplies",
|
|
"sku": "EXP-001"
|
|
},
|
|
"department": {
|
|
"id": 1,
|
|
"name": "Admin"
|
|
},
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-expense-item": {
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "DELETE /api/job-cards/{id}/delete-expense-item",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_expense_item_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_expense_item_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Expense item line deleted successfully"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-expense-item-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/add-expense-item-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_expense_item_id": {
|
|
"type": "string"
|
|
},
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Expense item attachment(s) added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"expense_item_id": 1,
|
|
"attachments": [
|
|
{
|
|
"id": 1,
|
|
"job_card_expense_item_id": 1,
|
|
"file_path": "job_card_expense_item_attachments/receipt.pdf",
|
|
"created_at": "2026-04-04T12:00:00.000000Z",
|
|
"updated_at": "2026-04-04T12:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-expense-item-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "DELETE /api/job-cards/{id}/delete-expense-item-attachment",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_expense_item_id": 1,
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Expense item attachment deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"expense_item_id": 1,
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/get-expense-item-attachment": {
|
|
"get": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "GET /api/job-cards/{id}/get-expense-item-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_expense_item_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_expense_item_id": 1,
|
|
"file_path": "job_card_expense_item_attachments/receipt.pdf",
|
|
"url": "http://localhost/storage/job_card_expense_item_attachments/receipt.pdf",
|
|
"created_at": "2026-04-04T12:00:00.000000Z",
|
|
"updated_at": "2026-04-04T12:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-shop-recommendation": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Add a shop recommendation to the job card.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"recommendation": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"recommendation": "Replace brake pads."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_recommendations": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"recommendation": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Shop recommendation added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"shop_recommendations": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"recommendation": "Replace brake pads.",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/edit-shop-recommendation": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Edit an existing shop recommendation.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"shop_recommendation_id": {
|
|
"type": "integer"
|
|
},
|
|
"recommendation": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"shop_recommendation_id": 1,
|
|
"recommendation": "Updated recommendation."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_recommendations": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"recommendation": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Shop recommendation updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"shop_recommendations": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"recommendation": "Updated recommendation.",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T11:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-shop-recommendation": {
|
|
"delete": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Delete a shop recommendation. Query or body: shop_recommendation_id",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"shop_recommendation_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"shop_recommendation_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"shop_recommendations": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Shop recommendation deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"shop_recommendations": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Add attachments to a job card.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"attachment_files": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"attachment_path": {
|
|
"type": "string"
|
|
},
|
|
"original_name": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Attachments added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"attachment_files": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"attachment_path": "job_card_attachments/abc.pdf",
|
|
"original_name": "abc.pdf",
|
|
"created_at": "2026-03-31T12:00:00.000000Z",
|
|
"updated_at": "2026-03-31T12:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/delete-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "Delete one attachment. Body or query: attachment_id",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"attachment_files": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Attachment deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Job Card 001",
|
|
"attachment_files": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/change-service-writer-id": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/change-service-writer-id",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_writer_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Service writer updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"service_writer_id": 1,
|
|
"title": "Job Card 001"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/change-sales-person-id": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/change-sales-person-id",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sales_person_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"sales_person_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_person_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Sales person updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"sales_person_id": 1,
|
|
"title": "Job Card 001"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/job-cards/{id}/change-technician-id": {
|
|
"post": {
|
|
"tags": [
|
|
"Job Cards"
|
|
],
|
|
"summary": "POST /api/job-cards/{id}/change-technician-id",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"technician_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"technician_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Technician updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"technician_id": 1,
|
|
"title": "Job Card 001"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-mode": {
|
|
"get": {
|
|
"tags": [
|
|
"Payment Mode"
|
|
],
|
|
"summary": "Display a listing of payment modes.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Cash",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Payment Mode"
|
|
],
|
|
"summary": "Store a newly created payment mode.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Cash",
|
|
"is_default": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Cash",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-mode/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Payment Mode"
|
|
],
|
|
"summary": "Update the specified payment mode.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Cash",
|
|
"is_default": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Cash",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Payment Mode"
|
|
],
|
|
"summary": "Remove the specified payment mode.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-recieved": {
|
|
"get": {
|
|
"tags": [
|
|
"Payment Recieved"
|
|
],
|
|
"summary": "Display a listing of payments received.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"amount_received": {
|
|
"type": "integer"
|
|
},
|
|
"payment_number": {
|
|
"type": "string"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"reference_date": {
|
|
"type": "string"
|
|
},
|
|
"deposit_to": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"payment_mode_id": 1,
|
|
"customer_id": 1,
|
|
"amount_received": 1000,
|
|
"payment_number": "RCPT-001",
|
|
"payment_date": "2026-03-31",
|
|
"reference_date": "2026-03-31",
|
|
"deposit_to": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Payment Recieved"
|
|
],
|
|
"summary": "Store a newly created payment received.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"amount_received": {
|
|
"type": "integer"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_id": 1,
|
|
"payment_mode_id": 1,
|
|
"customer_id": 1,
|
|
"amount_received": 1000,
|
|
"payment_date": "2026-03-31",
|
|
"note": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"amount_received": {
|
|
"type": "integer"
|
|
},
|
|
"payment_number": {
|
|
"type": "string"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"reference_date": {
|
|
"type": "string"
|
|
},
|
|
"deposit_to": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"payment_mode_id": 1,
|
|
"customer_id": 1,
|
|
"amount_received": 1000,
|
|
"payment_number": "RCPT-001",
|
|
"payment_date": "2026-03-31",
|
|
"reference_date": "2026-03-31",
|
|
"deposit_to": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-recieved/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Payment Recieved"
|
|
],
|
|
"summary": "Update the specified payment received.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"amount_received": {
|
|
"type": "integer"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_id": 1,
|
|
"payment_mode_id": 1,
|
|
"customer_id": 1,
|
|
"amount_received": 1000,
|
|
"payment_date": "2026-03-31",
|
|
"note": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"amount_received": {
|
|
"type": "integer"
|
|
},
|
|
"payment_number": {
|
|
"type": "string"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"reference_date": {
|
|
"type": "string"
|
|
},
|
|
"deposit_to": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"payment_mode_id": 1,
|
|
"customer_id": 1,
|
|
"amount_received": 1000,
|
|
"payment_number": "RCPT-001",
|
|
"payment_date": "2026-03-31",
|
|
"reference_date": "2026-03-31",
|
|
"deposit_to": "string",
|
|
"note": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Payment Recieved"
|
|
],
|
|
"summary": "Remove the specified payment received (and its attachments from storage).",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/parts": {
|
|
"get": {
|
|
"tags": [
|
|
"Parts"
|
|
],
|
|
"summary": "Display a listing of parts.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"part_number": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"manufactured_by": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"pricing_matrix": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"track_inventory": {
|
|
"type": "boolean"
|
|
},
|
|
"opening_stock": {
|
|
"type": "integer"
|
|
},
|
|
"available_stock": {
|
|
"type": "integer"
|
|
},
|
|
"as_on_date": {
|
|
"type": "string"
|
|
},
|
|
"min_stock": {
|
|
"type": "integer"
|
|
},
|
|
"max_stock": {
|
|
"type": "integer"
|
|
},
|
|
"inventory_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"tracking_type": {
|
|
"type": "string"
|
|
},
|
|
"inventory_purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"title": "Engine Oil Filter",
|
|
"sku": "SKU-001",
|
|
"part_number": "PRT-001",
|
|
"unit_type_id": 1,
|
|
"manufactured_by": "Toyota",
|
|
"description": "string",
|
|
"location": "Shelf A1",
|
|
"pricing_matrix": "string",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"selling_price": 25,
|
|
"sales_chart_of_account": "string",
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": "string",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 15,
|
|
"track_inventory": false,
|
|
"opening_stock": 1,
|
|
"available_stock": 1,
|
|
"as_on_date": "2026-03-31",
|
|
"min_stock": 1,
|
|
"max_stock": 1,
|
|
"inventory_chart_of_account": "string",
|
|
"tracking_type": "string",
|
|
"inventory_purchase_price": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Parts"
|
|
],
|
|
"summary": "Store a newly created part.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"part_number": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"manufactured_by": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"pricing_matrix": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"track_inventory": {
|
|
"type": "boolean"
|
|
},
|
|
"opening_stock": {
|
|
"type": "integer"
|
|
},
|
|
"available_stock": {
|
|
"type": "integer"
|
|
},
|
|
"as_on_date": {
|
|
"type": "string"
|
|
},
|
|
"min_stock": {
|
|
"type": "integer"
|
|
},
|
|
"max_stock": {
|
|
"type": "integer"
|
|
},
|
|
"inventory_chart_of_account": {
|
|
"type": "integer"
|
|
},
|
|
"tracking_type": {
|
|
"type": "integer"
|
|
},
|
|
"inventory_purchase_price": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"title": "Engine Oil Filter",
|
|
"sku": "SKU-001",
|
|
"part_number": "PRT-001",
|
|
"unit_type_id": 1,
|
|
"manufactured_by": "Toyota",
|
|
"description": "Premium quality oil filter",
|
|
"location": "Shelf A1",
|
|
"pricing_matrix": "retail",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"selling_price": 25,
|
|
"sales_chart_of_account": 101,
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": 201,
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 15,
|
|
"track_inventory": true,
|
|
"opening_stock": 10,
|
|
"available_stock": 10,
|
|
"as_on_date": "2026-03-31",
|
|
"min_stock": 2,
|
|
"max_stock": 100,
|
|
"inventory_chart_of_account": 301,
|
|
"tracking_type": 1,
|
|
"inventory_purchase_price": 15
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"part_number": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"manufactured_by": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"pricing_matrix": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"track_inventory": {
|
|
"type": "boolean"
|
|
},
|
|
"opening_stock": {
|
|
"type": "integer"
|
|
},
|
|
"available_stock": {
|
|
"type": "integer"
|
|
},
|
|
"as_on_date": {
|
|
"type": "string"
|
|
},
|
|
"min_stock": {
|
|
"type": "integer"
|
|
},
|
|
"max_stock": {
|
|
"type": "integer"
|
|
},
|
|
"inventory_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"tracking_type": {
|
|
"type": "string"
|
|
},
|
|
"inventory_purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"title": "Engine Oil Filter",
|
|
"sku": "SKU-001",
|
|
"part_number": "PRT-001",
|
|
"unit_type_id": 1,
|
|
"manufactured_by": "Toyota",
|
|
"description": "string",
|
|
"location": "Shelf A1",
|
|
"pricing_matrix": "string",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"selling_price": 25,
|
|
"sales_chart_of_account": "string",
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": "string",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 15,
|
|
"track_inventory": false,
|
|
"opening_stock": 1,
|
|
"available_stock": 1,
|
|
"as_on_date": "2026-03-31",
|
|
"min_stock": 1,
|
|
"max_stock": 1,
|
|
"inventory_chart_of_account": "string",
|
|
"tracking_type": "string",
|
|
"inventory_purchase_price": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/parts/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Parts"
|
|
],
|
|
"summary": "Display the specified part.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"part_number": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"manufactured_by": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"pricing_matrix": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"track_inventory": {
|
|
"type": "boolean"
|
|
},
|
|
"opening_stock": {
|
|
"type": "integer"
|
|
},
|
|
"available_stock": {
|
|
"type": "integer"
|
|
},
|
|
"as_on_date": {
|
|
"type": "string"
|
|
},
|
|
"min_stock": {
|
|
"type": "integer"
|
|
},
|
|
"max_stock": {
|
|
"type": "integer"
|
|
},
|
|
"inventory_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"tracking_type": {
|
|
"type": "string"
|
|
},
|
|
"inventory_purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"title": "Engine Oil Filter",
|
|
"sku": "SKU-001",
|
|
"part_number": "PRT-001",
|
|
"unit_type_id": 1,
|
|
"manufactured_by": "Toyota",
|
|
"description": "string",
|
|
"location": "Shelf A1",
|
|
"pricing_matrix": "string",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"selling_price": 25,
|
|
"sales_chart_of_account": "string",
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": "string",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 15,
|
|
"track_inventory": false,
|
|
"opening_stock": 1,
|
|
"available_stock": 1,
|
|
"as_on_date": "2026-03-31",
|
|
"min_stock": 1,
|
|
"max_stock": 1,
|
|
"inventory_chart_of_account": "string",
|
|
"tracking_type": "string",
|
|
"inventory_purchase_price": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Parts"
|
|
],
|
|
"summary": "Update the specified part.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"track_inventory": {
|
|
"type": "boolean"
|
|
},
|
|
"opening_stock": {
|
|
"type": "integer"
|
|
},
|
|
"available_stock": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Engine Oil Filter",
|
|
"sku": "SKU-001",
|
|
"category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"selling_price": 25,
|
|
"purchase_information": true,
|
|
"purchase_price": 15,
|
|
"track_inventory": true,
|
|
"opening_stock": 10,
|
|
"available_stock": 8
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"part_number": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"manufactured_by": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"pricing_matrix": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"track_inventory": {
|
|
"type": "boolean"
|
|
},
|
|
"opening_stock": {
|
|
"type": "integer"
|
|
},
|
|
"available_stock": {
|
|
"type": "integer"
|
|
},
|
|
"as_on_date": {
|
|
"type": "string"
|
|
},
|
|
"min_stock": {
|
|
"type": "integer"
|
|
},
|
|
"max_stock": {
|
|
"type": "integer"
|
|
},
|
|
"inventory_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"tracking_type": {
|
|
"type": "string"
|
|
},
|
|
"inventory_purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"title": "Engine Oil Filter",
|
|
"sku": "SKU-001",
|
|
"part_number": "PRT-001",
|
|
"unit_type_id": 1,
|
|
"manufactured_by": "Toyota",
|
|
"description": "string",
|
|
"location": "Shelf A1",
|
|
"pricing_matrix": "string",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"selling_price": 25,
|
|
"sales_chart_of_account": "string",
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": "string",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 15,
|
|
"track_inventory": false,
|
|
"opening_stock": 1,
|
|
"available_stock": 1,
|
|
"as_on_date": "2026-03-31",
|
|
"min_stock": 1,
|
|
"max_stock": 1,
|
|
"inventory_chart_of_account": "string",
|
|
"tracking_type": "string",
|
|
"inventory_purchase_price": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Parts"
|
|
],
|
|
"summary": "Remove the specified part.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/parts/import": {
|
|
"post": {
|
|
"tags": [
|
|
"Import Parts"
|
|
],
|
|
"summary": "Import parts from Excel file.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Action completed successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/parts/export": {
|
|
"post": {
|
|
"tags": [
|
|
"Export Parts"
|
|
],
|
|
"summary": "Export parts to Excel.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"track_inventory": {
|
|
"type": "boolean"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Engine Oil Filter",
|
|
"sku": "SKU-001",
|
|
"category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"selling_price": 25,
|
|
"purchase_information": true,
|
|
"purchase_price": 15,
|
|
"track_inventory": false,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"example": "<binary file>"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/parts/toggle-status": {
|
|
"post": {
|
|
"tags": [
|
|
"Toggle Part Status"
|
|
],
|
|
"summary": "POST /api/parts/toggle-status",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"part_number": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"manufactured_by": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"pricing_matrix": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"track_inventory": {
|
|
"type": "boolean"
|
|
},
|
|
"opening_stock": {
|
|
"type": "integer"
|
|
},
|
|
"as_on_date": {
|
|
"type": "string"
|
|
},
|
|
"min_stock": {
|
|
"type": "integer"
|
|
},
|
|
"max_stock": {
|
|
"type": "integer"
|
|
},
|
|
"inventory_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"tracking_type": {
|
|
"type": "string"
|
|
},
|
|
"inventory_purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"title": "Engine Oil Filter",
|
|
"sku": "SKU-001",
|
|
"part_number": "PRT-001",
|
|
"unit_type_id": 1,
|
|
"manufactured_by": "Toyota",
|
|
"description": "string",
|
|
"location": "Shelf A1",
|
|
"pricing_matrix": "string",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"selling_price": 25,
|
|
"sales_chart_of_account": "string",
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": "string",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 15,
|
|
"track_inventory": false,
|
|
"opening_stock": 1,
|
|
"as_on_date": "2026-03-31",
|
|
"min_stock": 1,
|
|
"max_stock": 1,
|
|
"inventory_chart_of_account": "string",
|
|
"tracking_type": "string",
|
|
"inventory_purchase_price": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/purchase-orders": {
|
|
"get": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "Display a listing of purchase orders.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string"
|
|
},
|
|
"delivery_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"terms_and_conditions": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"part": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"vendor_id": 1,
|
|
"title": "Purchase Order for Parts",
|
|
"order_number": "PO-001",
|
|
"order_date": "2026-03-31",
|
|
"delivery_date": "2026-04-07",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"terms_and_conditions": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"parts": [
|
|
{
|
|
"id": 1,
|
|
"purchase_order_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 2,
|
|
"rate": "45.50",
|
|
"description": "Oil filter",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"part": {
|
|
"id": 1,
|
|
"title": "Oil Filter"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75,
|
|
"from": 1,
|
|
"to": 15
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "Store a newly created purchase order with labels and items (parts).",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string"
|
|
},
|
|
"delivery_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"terms_and_conditions": {
|
|
"type": "string"
|
|
},
|
|
"items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "number"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_id": 1,
|
|
"vendor_id": 1,
|
|
"title": "Purchase Order for Parts",
|
|
"order_number": "PO-001",
|
|
"order_date": "2026-03-31",
|
|
"delivery_date": "2026-04-07",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"terms_and_conditions": "Net 30",
|
|
"items": [
|
|
{
|
|
"part_id": 1,
|
|
"quantity": 2,
|
|
"rate": 45.5,
|
|
"description": "Oil filter"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string"
|
|
},
|
|
"delivery_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"terms_and_conditions": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"part": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Purchase order created successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"vendor_id": 1,
|
|
"title": "Purchase Order for Parts",
|
|
"order_number": "PO-001",
|
|
"order_date": "2026-03-31",
|
|
"delivery_date": "2026-04-07",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"terms_and_conditions": "Net 30",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"parts": [
|
|
{
|
|
"id": 1,
|
|
"purchase_order_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 2,
|
|
"rate": "45.50",
|
|
"description": "Oil filter",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z",
|
|
"part": {
|
|
"id": 1,
|
|
"title": "Oil Filter"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/purchase-orders/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "Update the specified purchase order.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"delivery_date": {
|
|
"type": "string"
|
|
},
|
|
"items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "number"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Purchase Order for Parts (updated)",
|
|
"order_number": "PO-001",
|
|
"delivery_date": "2026-04-08",
|
|
"items": [
|
|
{
|
|
"part_id": 1,
|
|
"quantity": 3,
|
|
"rate": 45.5,
|
|
"description": "Oil filter - updated qty"
|
|
},
|
|
{
|
|
"part_id": 2,
|
|
"quantity": 1,
|
|
"rate": 120,
|
|
"description": "Air filter"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"order_date": {
|
|
"type": "string"
|
|
},
|
|
"delivery_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"terms_and_conditions": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"part": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Purchase order updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"vendor_id": 1,
|
|
"title": "Purchase Order for Parts (updated)",
|
|
"order_number": "PO-001",
|
|
"order_date": "2026-03-31",
|
|
"delivery_date": "2026-04-08",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"terms_and_conditions": "Net 30",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:20:00.000000Z",
|
|
"parts": [
|
|
{
|
|
"id": 3,
|
|
"purchase_order_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 3,
|
|
"rate": "45.50",
|
|
"description": "Oil filter - updated qty",
|
|
"created_at": "2026-03-31T10:20:00.000000Z",
|
|
"updated_at": "2026-03-31T10:20:00.000000Z",
|
|
"part": {
|
|
"id": 1,
|
|
"title": "Oil Filter"
|
|
}
|
|
},
|
|
{
|
|
"id": 4,
|
|
"purchase_order_id": 1,
|
|
"part_id": 2,
|
|
"quantity": 1,
|
|
"rate": "120.00",
|
|
"description": "Air filter",
|
|
"created_at": "2026-03-31T10:20:00.000000Z",
|
|
"updated_at": "2026-03-31T10:20:00.000000Z",
|
|
"part": {
|
|
"id": 2,
|
|
"title": "Air Filter"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "Remove the specified purchase order.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Purchase order deleted successfully"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/purchase-orders/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "POST /api/purchase-orders/{id}/add-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Purchase order attachments added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"attachments": [
|
|
{
|
|
"id": 1,
|
|
"purchase_order_id": 1,
|
|
"file_path": "purchase_order_attachments/sample.pdf",
|
|
"created_at": "2026-04-13T10:00:00.000000Z",
|
|
"updated_at": "2026-04-13T10:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/purchase-orders/{id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "DELETE /api/purchase-orders/{id}/delete-attachment",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Purchase order attachment deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/purchase-orders/{id}/get-attachment": {
|
|
"get": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "GET /api/purchase-orders/{id}/get-attachment",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"purchase_order_id": 1,
|
|
"file_path": "purchase_order_attachments/sample.pdf",
|
|
"url": "http://localhost/storage/purchase_order_attachments/sample.pdf",
|
|
"created_at": "2026-04-13T10:00:00.000000Z",
|
|
"updated_at": "2026-04-13T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/purchase-orders/{id}/add-internal-note": {
|
|
"post": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "POST /api/purchase-orders/{id}/add-internal-note",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"note": "Follow up with vendor on ETA."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"internal_notes": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Purchase order internal note added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"internal_notes": [
|
|
{
|
|
"id": 1,
|
|
"purchase_order_id": 1,
|
|
"note": "Follow up with vendor on ETA.",
|
|
"created_at": "2026-04-13T10:00:00.000000Z",
|
|
"updated_at": "2026-04-13T10:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/purchase-orders/{id}/edit-internal-note": {
|
|
"post": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "POST /api/purchase-orders/{id}/edit-internal-note",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"internal_note_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"internal_note_id": 1,
|
|
"note": "Updated internal note text."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"internal_notes": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Purchase order internal note updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"internal_notes": [
|
|
{
|
|
"id": 1,
|
|
"purchase_order_id": 1,
|
|
"note": "Updated internal note text.",
|
|
"created_at": "2026-04-13T10:00:00.000000Z",
|
|
"updated_at": "2026-04-13T10:20:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/purchase-orders/{id}/delete-internal-note": {
|
|
"delete": {
|
|
"tags": [
|
|
"Purchase Orders"
|
|
],
|
|
"summary": "DELETE /api/purchase-orders/{id}/delete-internal-note",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"internal_note_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"internal_note_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"internal_notes": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Purchase order internal note deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"internal_notes": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/services": {
|
|
"get": {
|
|
"tags": [
|
|
"Services"
|
|
],
|
|
"summary": "Display a listing of services.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_matrix": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"labor_name": "Oil Change Service",
|
|
"service_code": "SVC-001",
|
|
"unit_type_id": 1,
|
|
"labor_matrix": "string",
|
|
"description": "string",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"labor_hours": 1,
|
|
"sales_chart_of_account": "string",
|
|
"selling_price": 50,
|
|
"purchase_information": false,
|
|
"purchase_chart_of_account": "string",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Services"
|
|
],
|
|
"summary": "Store a newly created service.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"labor_name": "Oil Change Service",
|
|
"service_code": "SVC-001",
|
|
"category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"selling_price": 50,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_matrix": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"labor_name": "Oil Change Service",
|
|
"service_code": "SVC-001",
|
|
"unit_type_id": 1,
|
|
"labor_matrix": "string",
|
|
"description": "string",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"labor_hours": 1,
|
|
"sales_chart_of_account": "string",
|
|
"selling_price": 50,
|
|
"purchase_information": false,
|
|
"purchase_chart_of_account": "string",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/services/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Services"
|
|
],
|
|
"summary": "Display the specified service.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_matrix": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"labor_name": "Oil Change Service",
|
|
"service_code": "SVC-001",
|
|
"unit_type_id": 1,
|
|
"labor_matrix": "string",
|
|
"description": "string",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"labor_hours": 1,
|
|
"sales_chart_of_account": "string",
|
|
"selling_price": 50,
|
|
"purchase_information": false,
|
|
"purchase_chart_of_account": "string",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Services"
|
|
],
|
|
"summary": "Update the specified service.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"labor_name": "Oil Change Service",
|
|
"service_code": "SVC-001",
|
|
"category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"selling_price": 50,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_matrix": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"category_id": 1,
|
|
"labor_name": "Oil Change Service",
|
|
"service_code": "SVC-001",
|
|
"unit_type_id": 1,
|
|
"labor_matrix": "string",
|
|
"description": "string",
|
|
"department_id": 1,
|
|
"sales_information": true,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"labor_hours": 1,
|
|
"sales_chart_of_account": "string",
|
|
"selling_price": 50,
|
|
"purchase_information": false,
|
|
"purchase_chart_of_account": "string",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 1,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Services"
|
|
],
|
|
"summary": "Remove the specified service.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/import-services": {
|
|
"post": {
|
|
"tags": [
|
|
"Import Services"
|
|
],
|
|
"summary": "Import services from Excel file.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Action completed successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/export-services": {
|
|
"post": {
|
|
"tags": [
|
|
"Export Services"
|
|
],
|
|
"summary": "Export services to Excel.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"labor_name": {
|
|
"type": "string"
|
|
},
|
|
"service_code": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"labor_name": "Oil Change Service",
|
|
"service_code": "SVC-001",
|
|
"category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"selling_price": 50,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"example": "<binary file>"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/toggle-expense-item-status": {
|
|
"post": {
|
|
"tags": [
|
|
"Toggle Expense Item Status"
|
|
],
|
|
"summary": "POST /api/toggle-expense-item-status",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"item_type": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"item_name": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"item_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"item_type": "Expense",
|
|
"category_id": 1,
|
|
"item_name": "Office Supplies",
|
|
"sku": "EXP-001",
|
|
"item_code": "string",
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"description": "string",
|
|
"sales_information": false,
|
|
"selling_price": 1,
|
|
"sales_chart_of_account": "string",
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": "Expenses",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 10,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/expense-items": {
|
|
"get": {
|
|
"tags": [
|
|
"Expense Items"
|
|
],
|
|
"summary": "Display a listing of expense items.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"item_type": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"item_name": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"item_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"item_type": "Expense",
|
|
"category_id": 1,
|
|
"item_name": "Office Supplies",
|
|
"sku": "EXP-001",
|
|
"item_code": "string",
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"description": "string",
|
|
"sales_information": false,
|
|
"selling_price": 1,
|
|
"sales_chart_of_account": "string",
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": "Expenses",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 10,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Expense Items"
|
|
],
|
|
"summary": "Store a newly created expense item.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"item_type": {
|
|
"type": "string"
|
|
},
|
|
"item_name": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"item_type": "Expense",
|
|
"item_name": "Office Supplies",
|
|
"category_id": 1,
|
|
"purchase_information": true,
|
|
"purchase_price": 10,
|
|
"purchase_chart_of_account": "Expenses",
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"item_type": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"item_name": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"item_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"item_type": "Expense",
|
|
"category_id": 1,
|
|
"item_name": "Office Supplies",
|
|
"sku": "EXP-001",
|
|
"item_code": "string",
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"description": "string",
|
|
"sales_information": false,
|
|
"selling_price": 1,
|
|
"sales_chart_of_account": "string",
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": "Expenses",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 10,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/expense-items/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Expense Items"
|
|
],
|
|
"summary": "Update the specified expense item.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"item_type": {
|
|
"type": "string"
|
|
},
|
|
"item_name": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"item_type": "Expense",
|
|
"item_name": "Office Supplies",
|
|
"category_id": 1,
|
|
"purchase_information": true,
|
|
"purchase_price": 10,
|
|
"purchase_chart_of_account": "Expenses",
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"item_type": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"item_name": {
|
|
"type": "string"
|
|
},
|
|
"sku": {
|
|
"type": "string"
|
|
},
|
|
"item_code": {
|
|
"type": "string"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"sales_information": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"sales_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_information": {
|
|
"type": "boolean"
|
|
},
|
|
"purchase_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"purchase_preferred_vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_price": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"item_type": "Expense",
|
|
"category_id": 1,
|
|
"item_name": "Office Supplies",
|
|
"sku": "EXP-001",
|
|
"item_code": "string",
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"description": "string",
|
|
"sales_information": false,
|
|
"selling_price": 1,
|
|
"sales_chart_of_account": "string",
|
|
"purchase_information": true,
|
|
"purchase_chart_of_account": "Expenses",
|
|
"purchase_preferred_vendor_id": 1,
|
|
"purchase_price": 10,
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Expense Items"
|
|
],
|
|
"summary": "Remove the specified expense item.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/bills": {
|
|
"get": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "Display a listing of bills.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_number": {
|
|
"type": "string"
|
|
},
|
|
"bill_date": {
|
|
"type": "string"
|
|
},
|
|
"bill_due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"services": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"expenses": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Workshop Bill",
|
|
"job_card_id": 1,
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"purchase_order_id": 1,
|
|
"bill_number": "BILL-001",
|
|
"bill_date": "2026-03-31",
|
|
"bill_due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"department_id": 1,
|
|
"notes": "Vendor invoice for parts, service and expense lines",
|
|
"status": "open",
|
|
"services": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"service_id": 1,
|
|
"quantity": "2.00",
|
|
"rate": "150.00",
|
|
"chart_of_account": "COA-401",
|
|
"description": "Labor service line"
|
|
}
|
|
],
|
|
"parts": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 3,
|
|
"rate": "40.00",
|
|
"chart_of_account": 1201,
|
|
"description": "Brake pad set"
|
|
}
|
|
],
|
|
"expenses": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"expense_id": 1,
|
|
"quantity": "1.00",
|
|
"rate": "75.00",
|
|
"chart_of_account": "COA-402",
|
|
"description": "Consumables expense line"
|
|
}
|
|
],
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "Store a newly created bill with labels, services and expenses.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_number": {
|
|
"type": "string"
|
|
},
|
|
"bill_date": {
|
|
"type": "string"
|
|
},
|
|
"bill_due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"label_ids": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"part_items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"service_items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"expense_items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"expense_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Workshop Bill",
|
|
"job_card_id": 1,
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"purchase_order_id": 1,
|
|
"bill_number": "BILL-001",
|
|
"bill_date": "2026-03-31",
|
|
"bill_due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"department_id": 1,
|
|
"notes": "Vendor invoice for parts, service and expense lines",
|
|
"label_ids": [
|
|
1
|
|
],
|
|
"part_items": [
|
|
{
|
|
"part_id": 1,
|
|
"quantity": 3,
|
|
"rate": 40,
|
|
"chart_of_account": 1201,
|
|
"description": "Brake pad set"
|
|
}
|
|
],
|
|
"service_items": [
|
|
{
|
|
"service_id": 1,
|
|
"quantity": 2,
|
|
"rate": 150,
|
|
"chart_of_account": "COA-401",
|
|
"description": "Labor service line"
|
|
}
|
|
],
|
|
"expense_items": [
|
|
{
|
|
"expense_id": 1,
|
|
"quantity": 1,
|
|
"rate": 75,
|
|
"chart_of_account": "COA-402",
|
|
"description": "Consumables expense line"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_number": {
|
|
"type": "string"
|
|
},
|
|
"bill_date": {
|
|
"type": "string"
|
|
},
|
|
"bill_due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"services": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"expenses": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Workshop Bill",
|
|
"job_card_id": 1,
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"purchase_order_id": 1,
|
|
"bill_number": "BILL-001",
|
|
"bill_date": "2026-03-31",
|
|
"bill_due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"department_id": 1,
|
|
"notes": "Vendor invoice for parts, service and expense lines",
|
|
"status": "open",
|
|
"services": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"service_id": 1,
|
|
"quantity": "2.00",
|
|
"rate": "150.00",
|
|
"chart_of_account": "COA-401",
|
|
"description": "Labor service line"
|
|
}
|
|
],
|
|
"parts": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 3,
|
|
"rate": "40.00",
|
|
"chart_of_account": 1201,
|
|
"description": "Brake pad set"
|
|
}
|
|
],
|
|
"expenses": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"expense_id": 1,
|
|
"quantity": "1.00",
|
|
"rate": "75.00",
|
|
"chart_of_account": "COA-402",
|
|
"description": "Consumables expense line"
|
|
}
|
|
],
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/bills/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "Update the specified bill.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_number": {
|
|
"type": "string"
|
|
},
|
|
"bill_date": {
|
|
"type": "string"
|
|
},
|
|
"bill_due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"label_ids": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"part_items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"service_items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"expense_items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"expense_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Workshop Bill - Updated",
|
|
"job_card_id": 1,
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"purchase_order_id": 1,
|
|
"bill_number": "BILL-001",
|
|
"bill_date": "2026-03-31",
|
|
"bill_due_date": "2026-04-20",
|
|
"payment_terms_id": 1,
|
|
"department_id": 1,
|
|
"notes": "Updated vendor invoice lines",
|
|
"label_ids": [
|
|
1
|
|
],
|
|
"part_items": [
|
|
{
|
|
"part_id": 1,
|
|
"quantity": 1,
|
|
"rate": 45,
|
|
"chart_of_account": 1201,
|
|
"description": "Updated part line"
|
|
}
|
|
],
|
|
"service_items": [
|
|
{
|
|
"service_id": 1,
|
|
"quantity": 1,
|
|
"rate": 200,
|
|
"chart_of_account": "COA-401",
|
|
"description": "Updated labor service line"
|
|
}
|
|
],
|
|
"expense_items": [
|
|
{
|
|
"expense_id": 1,
|
|
"quantity": 2,
|
|
"rate": 50,
|
|
"chart_of_account": "COA-402",
|
|
"description": "Updated consumables expense line"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"purchase_order_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_number": {
|
|
"type": "string"
|
|
},
|
|
"bill_date": {
|
|
"type": "string"
|
|
},
|
|
"bill_due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"services": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "integer"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"expenses": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Workshop Bill - Updated",
|
|
"job_card_id": 1,
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"purchase_order_id": 1,
|
|
"bill_number": "BILL-001",
|
|
"bill_date": "2026-03-31",
|
|
"bill_due_date": "2026-04-20",
|
|
"payment_terms_id": 1,
|
|
"department_id": 1,
|
|
"notes": "Updated vendor invoice lines",
|
|
"status": "open",
|
|
"services": [
|
|
{
|
|
"id": 2,
|
|
"bill_id": 1,
|
|
"service_id": 1,
|
|
"quantity": "1.00",
|
|
"rate": "200.00",
|
|
"chart_of_account": "COA-401",
|
|
"description": "Updated labor service line"
|
|
}
|
|
],
|
|
"parts": [
|
|
{
|
|
"id": 2,
|
|
"bill_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 1,
|
|
"rate": "45.00",
|
|
"chart_of_account": 1201,
|
|
"description": "Updated part line"
|
|
}
|
|
],
|
|
"expenses": [
|
|
{
|
|
"id": 2,
|
|
"bill_id": 1,
|
|
"expense_id": 1,
|
|
"quantity": "2.00",
|
|
"rate": "50.00",
|
|
"chart_of_account": "COA-402",
|
|
"description": "Updated consumables expense line"
|
|
}
|
|
],
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T11:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "Remove the specified bill.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/bills/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "POST /api/bills/{id}/add-attachment",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"file_path": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Bill attachments added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"attachments": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"file_path": "http://localhost/storage/bill_attachments/sample.pdf",
|
|
"created_at": "2026-04-13T10:00:00.000000Z",
|
|
"updated_at": "2026-04-13T10:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/bills/{id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "DELETE /api/bills/{id}/delete-attachment",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Bill attachment deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"attachments": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/bills/{id}/internal-note": {
|
|
"get": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "GET /api/bills/{id}/internal-note",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"from": {
|
|
"type": "integer"
|
|
},
|
|
"to": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"note": "Requested updated invoice copy.",
|
|
"created_at": "2026-04-13T10:00:00.000000Z",
|
|
"updated_at": "2026-04-13T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 1,
|
|
"per_page": 15,
|
|
"total": 1,
|
|
"from": 1,
|
|
"to": 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "POST /api/bills/{id}/internal-note",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"note": "Requested updated invoice copy."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"internal_notes": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Bill internal note added successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"internal_notes": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"note": "Requested updated invoice copy.",
|
|
"created_at": "2026-04-13T10:00:00.000000Z",
|
|
"updated_at": "2026-04-13T10:00:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "PUT /api/bills/{id}/internal-note",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"internal_note_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"internal_note_id": 1,
|
|
"note": "Updated internal note text."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"internal_notes": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Bill internal note updated successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"internal_notes": [
|
|
{
|
|
"id": 1,
|
|
"bill_id": 1,
|
|
"note": "Updated internal note text.",
|
|
"created_at": "2026-04-13T10:00:00.000000Z",
|
|
"updated_at": "2026-04-13T10:20:00.000000Z"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Bills"
|
|
],
|
|
"summary": "DELETE /api/bills/{id}/internal-note",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"internal_note_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"internal_note_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"internal_notes": {
|
|
"type": "array",
|
|
"items": {}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Bill internal note deleted successfully",
|
|
"data": {
|
|
"id": 1,
|
|
"internal_notes": []
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/expenses": {
|
|
"get": {
|
|
"tags": [
|
|
"Expenses"
|
|
],
|
|
"summary": "Display a listing of expenses.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"expense_date": {
|
|
"type": "string"
|
|
},
|
|
"paid_through": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"title": "Workshop Supplies",
|
|
"category_id": 1,
|
|
"vendor_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"expense_date": "2026-03-31",
|
|
"paid_through": "string",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "draft",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Expenses"
|
|
],
|
|
"summary": "Store a newly created expense with labels and expense items.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_id": 1,
|
|
"title": "Workshop Supplies",
|
|
"category_id": 1,
|
|
"vendor_id": 1,
|
|
"expense_date": "2026-03-31",
|
|
"department_id": 1,
|
|
"status": "draft"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"expense_date": {
|
|
"type": "string"
|
|
},
|
|
"paid_through": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"title": "Workshop Supplies",
|
|
"category_id": 1,
|
|
"vendor_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"expense_date": "2026-03-31",
|
|
"paid_through": "string",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "draft",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/expenses/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Expenses"
|
|
],
|
|
"summary": "Update the specified expense.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"expense_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_id": 1,
|
|
"title": "Workshop Supplies",
|
|
"category_id": 1,
|
|
"vendor_id": 1,
|
|
"expense_date": "2026-03-31",
|
|
"department_id": 1,
|
|
"status": "draft"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"category_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"expense_date": {
|
|
"type": "string"
|
|
},
|
|
"paid_through": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"title": "Workshop Supplies",
|
|
"category_id": 1,
|
|
"vendor_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"expense_date": "2026-03-31",
|
|
"paid_through": "string",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "draft",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Expenses"
|
|
],
|
|
"summary": "Remove the specified expense.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/task-types": {
|
|
"get": {
|
|
"tags": [
|
|
"Task Types"
|
|
],
|
|
"summary": "Display a listing of task types.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Maintenance",
|
|
"description": "string",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Task Types"
|
|
],
|
|
"summary": "Store a newly created task type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Maintenance",
|
|
"is_default": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Maintenance",
|
|
"description": "string",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/task-types/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Task Types"
|
|
],
|
|
"summary": "Update the specified task type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Maintenance",
|
|
"is_default": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Maintenance",
|
|
"description": "string",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Task Types"
|
|
],
|
|
"summary": "Remove the specified task type.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-default-task-type": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Default Task Type"
|
|
],
|
|
"summary": "Set a task type as the default.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Maintenance",
|
|
"description": "string",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-default-task-type": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Default Task Type"
|
|
],
|
|
"summary": "Remove default from a task type.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Maintenance",
|
|
"description": "string",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/task-sections": {
|
|
"get": {
|
|
"tags": [
|
|
"Task Sections"
|
|
],
|
|
"summary": "Display a listing of task sections.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "General Tasks",
|
|
"arrangement": 1,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Task Sections"
|
|
],
|
|
"summary": "Store a newly created task section.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Pre-Work",
|
|
"arrangement": 1,
|
|
"is_default": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "General Tasks",
|
|
"arrangement": 1,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/task-sections/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Task Sections"
|
|
],
|
|
"summary": "Update the specified task section.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Pre-Work",
|
|
"arrangement": 1,
|
|
"is_default": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "General Tasks",
|
|
"arrangement": 1,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Task Sections"
|
|
],
|
|
"summary": "Remove the specified task section.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-default-task-section": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Default Task Section"
|
|
],
|
|
"summary": "Set a task section as the default.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "General Tasks",
|
|
"arrangement": 1,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-default-task-section": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Default Task Section"
|
|
],
|
|
"summary": "Remove default from a task section.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "General Tasks",
|
|
"arrangement": 1,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/change-task-section-arrangement": {
|
|
"post": {
|
|
"tags": [
|
|
"Change Task Section Arrangement"
|
|
],
|
|
"summary": "Change arrangement of a section and shift all sections below it accordingly.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1,
|
|
"arrangement": 2
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "General Tasks",
|
|
"arrangement": 1,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/tasks": {
|
|
"get": {
|
|
"tags": [
|
|
"Tasks"
|
|
],
|
|
"summary": "Display a listing of tasks.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_section_id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"owner_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"priority": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"task_number": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"task_type_id": 1,
|
|
"task_section_id": 1,
|
|
"subject": "Inspect brake pads",
|
|
"description": "string",
|
|
"owner_id": 1,
|
|
"department_id": 1,
|
|
"priority": "medium",
|
|
"due_date": "2026-04-05",
|
|
"task_number": "TASK-001",
|
|
"status": "pending",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Tasks"
|
|
],
|
|
"summary": "Store a newly created task.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_section_id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"owner_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"priority": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_id": 1,
|
|
"task_type_id": 1,
|
|
"task_section_id": 1,
|
|
"subject": "Inspect brake pads",
|
|
"owner_id": 1,
|
|
"department_id": 1,
|
|
"priority": "medium",
|
|
"due_date": "2026-04-05",
|
|
"status": "pending"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_section_id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"owner_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"priority": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"task_number": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"task_type_id": 1,
|
|
"task_section_id": 1,
|
|
"subject": "Inspect brake pads",
|
|
"description": "string",
|
|
"owner_id": 1,
|
|
"department_id": 1,
|
|
"priority": "medium",
|
|
"due_date": "2026-04-05",
|
|
"task_number": "TASK-001",
|
|
"status": "pending",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/tasks/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Tasks"
|
|
],
|
|
"summary": "Update the specified task.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_section_id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"owner_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"priority": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_id": 1,
|
|
"task_type_id": 1,
|
|
"task_section_id": 1,
|
|
"subject": "Inspect brake pads",
|
|
"owner_id": 1,
|
|
"department_id": 1,
|
|
"priority": "medium",
|
|
"due_date": "2026-04-05",
|
|
"status": "pending"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_section_id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"owner_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"priority": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"task_number": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"task_type_id": 1,
|
|
"task_section_id": 1,
|
|
"subject": "Inspect brake pads",
|
|
"description": "string",
|
|
"owner_id": 1,
|
|
"department_id": 1,
|
|
"priority": "medium",
|
|
"due_date": "2026-04-05",
|
|
"task_number": "TASK-001",
|
|
"status": "pending",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Tasks"
|
|
],
|
|
"summary": "Remove the specified task.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/tasks/{id}/complete": {
|
|
"post": {
|
|
"tags": [
|
|
"Tasks"
|
|
],
|
|
"summary": "Mark a task as completed.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {}
|
|
},
|
|
"example": {}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_section_id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"owner_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"priority": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"task_number": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"task_type_id": 1,
|
|
"task_section_id": 1,
|
|
"subject": "Inspect brake pads",
|
|
"description": "string",
|
|
"owner_id": 1,
|
|
"department_id": 1,
|
|
"priority": "medium",
|
|
"due_date": "2026-04-05",
|
|
"task_number": "TASK-001",
|
|
"status": "pending",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/appointments": {
|
|
"get": {
|
|
"tags": [
|
|
"Appointments"
|
|
],
|
|
"summary": "Display a listing of appointments.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"from_time": {
|
|
"type": "string"
|
|
},
|
|
"to_time": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"title": "Oil Change Appointment",
|
|
"date": "2026-04-01",
|
|
"from_time": "09:00",
|
|
"to_time": "10:00",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"service_writer_id": 1,
|
|
"technician_id": 2,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "requested",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Appointments"
|
|
],
|
|
"summary": "Store a newly created appointment.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"from_time": {
|
|
"type": "string"
|
|
},
|
|
"to_time": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_id": 1,
|
|
"title": "Oil Change Appointment",
|
|
"date": "2026-04-01",
|
|
"from_time": "09:00",
|
|
"to_time": "10:00",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"service_writer_id": 1,
|
|
"technician_id": 2,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "requested"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"from_time": {
|
|
"type": "string"
|
|
},
|
|
"to_time": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"title": "Oil Change Appointment",
|
|
"date": "2026-04-01",
|
|
"from_time": "09:00",
|
|
"to_time": "10:00",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"service_writer_id": 1,
|
|
"technician_id": 2,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "requested",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/appointments/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Appointments"
|
|
],
|
|
"summary": "Update the specified appointment.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"from_time": {
|
|
"type": "string"
|
|
},
|
|
"to_time": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"job_card_id": 1,
|
|
"title": "Oil Change Appointment",
|
|
"date": "2026-04-01",
|
|
"from_time": "09:00",
|
|
"to_time": "10:00",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"service_writer_id": 1,
|
|
"technician_id": 2,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "requested"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"from_time": {
|
|
"type": "string"
|
|
},
|
|
"to_time": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"title": "Oil Change Appointment",
|
|
"date": "2026-04-01",
|
|
"from_time": "09:00",
|
|
"to_time": "10:00",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"service_writer_id": 1,
|
|
"technician_id": 2,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "requested",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Appointments"
|
|
],
|
|
"summary": "Remove the specified appointment.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/appointments/{id}/un-link-job-card": {
|
|
"post": {
|
|
"tags": [
|
|
"Appointments"
|
|
],
|
|
"summary": "Unlink a job card from an appointment.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {}
|
|
},
|
|
"example": {}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"from_time": {
|
|
"type": "string"
|
|
},
|
|
"to_time": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"title": "Oil Change Appointment",
|
|
"date": "2026-04-01",
|
|
"from_time": "09:00",
|
|
"to_time": "10:00",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"service_writer_id": 1,
|
|
"technician_id": 2,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "requested",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/appointments/{id}/change-status": {
|
|
"post": {
|
|
"tags": [
|
|
"Appointments"
|
|
],
|
|
"summary": "Change the status of the specified appointment.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"status": "confirmed"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"from_time": {
|
|
"type": "string"
|
|
},
|
|
"to_time": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_writer_id": {
|
|
"type": "integer"
|
|
},
|
|
"technician_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"job_card_id": 1,
|
|
"title": "Oil Change Appointment",
|
|
"date": "2026-04-01",
|
|
"from_time": "09:00",
|
|
"to_time": "10:00",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"service_writer_id": 1,
|
|
"technician_id": 2,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "requested",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoice-sequences": {
|
|
"get": {
|
|
"tags": [
|
|
"Invoice Sequences"
|
|
],
|
|
"summary": "Display a listing of invoice sequences.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sequence_title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"auto_generate": {
|
|
"type": "boolean"
|
|
},
|
|
"prefix": {
|
|
"type": "string"
|
|
},
|
|
"start_number": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Default Invoice Sequence",
|
|
"sequence_title": "INV",
|
|
"is_default": false,
|
|
"auto_generate": true,
|
|
"prefix": "INV-",
|
|
"start_number": 1,
|
|
"department_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Invoice Sequences"
|
|
],
|
|
"summary": "Store a newly created invoice sequence.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sequence_title": {
|
|
"type": "string"
|
|
},
|
|
"auto_generate": {
|
|
"type": "boolean"
|
|
},
|
|
"prefix": {
|
|
"type": "string"
|
|
},
|
|
"start_number": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Default Invoice Sequence",
|
|
"sequence_title": "INV",
|
|
"auto_generate": true,
|
|
"prefix": "INV-",
|
|
"start_number": 1,
|
|
"department_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sequence_title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"auto_generate": {
|
|
"type": "boolean"
|
|
},
|
|
"prefix": {
|
|
"type": "string"
|
|
},
|
|
"start_number": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Default Invoice Sequence",
|
|
"sequence_title": "INV",
|
|
"is_default": false,
|
|
"auto_generate": true,
|
|
"prefix": "INV-",
|
|
"start_number": 1,
|
|
"department_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoice-sequences/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Invoice Sequences"
|
|
],
|
|
"summary": "Update the specified invoice sequence.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sequence_title": {
|
|
"type": "string"
|
|
},
|
|
"auto_generate": {
|
|
"type": "boolean"
|
|
},
|
|
"prefix": {
|
|
"type": "string"
|
|
},
|
|
"start_number": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Default Invoice Sequence",
|
|
"sequence_title": "INV",
|
|
"auto_generate": true,
|
|
"prefix": "INV-",
|
|
"start_number": 1,
|
|
"department_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sequence_title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"auto_generate": {
|
|
"type": "boolean"
|
|
},
|
|
"prefix": {
|
|
"type": "string"
|
|
},
|
|
"start_number": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Default Invoice Sequence",
|
|
"sequence_title": "INV",
|
|
"is_default": false,
|
|
"auto_generate": true,
|
|
"prefix": "INV-",
|
|
"start_number": 1,
|
|
"department_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Invoice Sequences"
|
|
],
|
|
"summary": "Remove the specified invoice sequence.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-default-invoice-sequence": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Default Invoice Sequence"
|
|
],
|
|
"summary": "Mark an invoice sequence as default.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sequence_title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"auto_generate": {
|
|
"type": "boolean"
|
|
},
|
|
"prefix": {
|
|
"type": "string"
|
|
},
|
|
"start_number": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Default Invoice Sequence",
|
|
"sequence_title": "INV",
|
|
"is_default": false,
|
|
"auto_generate": true,
|
|
"prefix": "INV-",
|
|
"start_number": 1,
|
|
"department_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-default-invoice-sequence": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Default Invoice Sequence"
|
|
],
|
|
"summary": "Remove default flag from an invoice sequence.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"sequence_title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"auto_generate": {
|
|
"type": "boolean"
|
|
},
|
|
"prefix": {
|
|
"type": "string"
|
|
},
|
|
"start_number": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Default Invoice Sequence",
|
|
"sequence_title": "INV",
|
|
"is_default": false,
|
|
"auto_generate": true,
|
|
"prefix": "INV-",
|
|
"start_number": 1,
|
|
"department_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-groups": {
|
|
"get": {
|
|
"tags": [
|
|
"Service Groups"
|
|
],
|
|
"summary": "Display a listing of service groups.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_name": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_description": {
|
|
"type": "string"
|
|
},
|
|
"show_as_lump_sum": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_as_recommended": {
|
|
"type": "boolean"
|
|
},
|
|
"set_packaged_pricing": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"selling_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"service_name": "Full Service Package",
|
|
"shop_type_id": 1,
|
|
"code": "PKG-001",
|
|
"inventory_category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"service_description": "string",
|
|
"show_as_lump_sum": false,
|
|
"mark_as_recommended": false,
|
|
"set_packaged_pricing": false,
|
|
"selling_price": 1,
|
|
"selling_chart_of_account": "string",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Service Groups"
|
|
],
|
|
"summary": "Store a newly created service group.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_name": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_description": {
|
|
"type": "string"
|
|
},
|
|
"show_as_lump_sum": {
|
|
"type": "boolean"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_name": "Full Service Package",
|
|
"shop_type_id": 1,
|
|
"code": "PKG-001",
|
|
"inventory_category_id": 1,
|
|
"department_id": 1,
|
|
"service_description": "string",
|
|
"show_as_lump_sum": false,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_name": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_description": {
|
|
"type": "string"
|
|
},
|
|
"show_as_lump_sum": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_as_recommended": {
|
|
"type": "boolean"
|
|
},
|
|
"set_packaged_pricing": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"selling_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_name": "Full Service Package",
|
|
"shop_type_id": 1,
|
|
"code": "PKG-001",
|
|
"inventory_category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"service_description": "string",
|
|
"show_as_lump_sum": false,
|
|
"mark_as_recommended": false,
|
|
"set_packaged_pricing": false,
|
|
"selling_price": 1,
|
|
"selling_chart_of_account": "string",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-groups/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Service Groups"
|
|
],
|
|
"summary": "Display the specified service group.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_name": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_description": {
|
|
"type": "string"
|
|
},
|
|
"show_as_lump_sum": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_as_recommended": {
|
|
"type": "boolean"
|
|
},
|
|
"set_packaged_pricing": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"selling_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_name": "Full Service Package",
|
|
"shop_type_id": 1,
|
|
"code": "PKG-001",
|
|
"inventory_category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"service_description": "string",
|
|
"show_as_lump_sum": false,
|
|
"mark_as_recommended": false,
|
|
"set_packaged_pricing": false,
|
|
"selling_price": 1,
|
|
"selling_chart_of_account": "string",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Service Groups"
|
|
],
|
|
"summary": "Update the specified service group.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_name": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_description": {
|
|
"type": "string"
|
|
},
|
|
"show_as_lump_sum": {
|
|
"type": "boolean"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_name": "Full Service Package",
|
|
"shop_type_id": 1,
|
|
"code": "PKG-001",
|
|
"inventory_category_id": 1,
|
|
"department_id": 1,
|
|
"service_description": "string",
|
|
"show_as_lump_sum": false,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_name": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_description": {
|
|
"type": "string"
|
|
},
|
|
"show_as_lump_sum": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_as_recommended": {
|
|
"type": "boolean"
|
|
},
|
|
"set_packaged_pricing": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"selling_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_name": "Full Service Package",
|
|
"shop_type_id": 1,
|
|
"code": "PKG-001",
|
|
"inventory_category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"service_description": "string",
|
|
"show_as_lump_sum": false,
|
|
"mark_as_recommended": false,
|
|
"set_packaged_pricing": false,
|
|
"selling_price": 1,
|
|
"selling_chart_of_account": "string",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Service Groups"
|
|
],
|
|
"summary": "Remove the specified service group.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-groups/{id}/toggle-status": {
|
|
"post": {
|
|
"tags": [
|
|
"Service Groups"
|
|
],
|
|
"summary": "POST /api/service-groups/{id}/toggle-status",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {}
|
|
},
|
|
"example": {}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_name": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_description": {
|
|
"type": "string"
|
|
},
|
|
"show_as_lump_sum": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_as_recommended": {
|
|
"type": "boolean"
|
|
},
|
|
"set_packaged_pricing": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"selling_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_name": "Full Service Package",
|
|
"shop_type_id": 1,
|
|
"code": "PKG-001",
|
|
"inventory_category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"service_description": "string",
|
|
"show_as_lump_sum": false,
|
|
"mark_as_recommended": false,
|
|
"set_packaged_pricing": false,
|
|
"selling_price": 1,
|
|
"selling_chart_of_account": "string",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-groups/{id}/add-label": {
|
|
"post": {
|
|
"tags": [
|
|
"Service Groups"
|
|
],
|
|
"summary": "Attach a label to a service group.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"label_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"label_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_name": {
|
|
"type": "string"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"inventory_category_id": {
|
|
"type": "integer"
|
|
},
|
|
"unit_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_description": {
|
|
"type": "string"
|
|
},
|
|
"show_as_lump_sum": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_as_recommended": {
|
|
"type": "boolean"
|
|
},
|
|
"set_packaged_pricing": {
|
|
"type": "boolean"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"selling_chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_name": "Full Service Package",
|
|
"shop_type_id": 1,
|
|
"code": "PKG-001",
|
|
"inventory_category_id": 1,
|
|
"unit_type_id": 1,
|
|
"department_id": 1,
|
|
"service_description": "string",
|
|
"show_as_lump_sum": false,
|
|
"mark_as_recommended": false,
|
|
"set_packaged_pricing": false,
|
|
"selling_price": 1,
|
|
"selling_chart_of_account": "string",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-groups/{id}/delete-label": {
|
|
"delete": {
|
|
"tags": [
|
|
"Service Groups"
|
|
],
|
|
"summary": "Detach a label from a service group.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"label_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"label_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-group-includes": {
|
|
"get": {
|
|
"tags": [
|
|
"Service Group Includes"
|
|
],
|
|
"summary": "Display a listing of service group includes.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"title": "Includes brake inspection",
|
|
"arrangement": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Service Group Includes"
|
|
],
|
|
"summary": "Store a newly created service group include.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_group_id": 1,
|
|
"title": "Includes brake inspection",
|
|
"arrangement": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"title": "Includes brake inspection",
|
|
"arrangement": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-group-includes/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Service Group Includes"
|
|
],
|
|
"summary": "Update the specified service group include.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_group_id": 1,
|
|
"title": "Includes brake inspection",
|
|
"arrangement": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"title": "Includes brake inspection",
|
|
"arrangement": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Service Group Includes"
|
|
],
|
|
"summary": "Remove the specified service group include.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-group-includes/{id}/change-arrangement": {
|
|
"post": {
|
|
"tags": [
|
|
"Service Group Includes"
|
|
],
|
|
"summary": "Change arrangement of a service group include.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"arrangement": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"arrangement": 2
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"arrangement": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"title": "Includes brake inspection",
|
|
"arrangement": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-group-pricings": {
|
|
"get": {
|
|
"tags": [
|
|
"Service Group Pricings"
|
|
],
|
|
"summary": "Display a listing of service group pricing records.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"fuel_type_id": 1,
|
|
"body_type_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"labor_hours": 1,
|
|
"selling_price": 100,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Service Group Pricings"
|
|
],
|
|
"summary": "Store a newly created service group pricing record.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_group_id": 1,
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"rate_type": "flat_rate",
|
|
"selling_price": 100
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"fuel_type_id": 1,
|
|
"body_type_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"labor_hours": 1,
|
|
"selling_price": 100,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-group-pricings/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Service Group Pricings"
|
|
],
|
|
"summary": "Update the specified service group pricing record.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_group_id": 1,
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"rate_type": "flat_rate",
|
|
"selling_price": 100
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"fuel_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"labor_hours": {
|
|
"type": "integer"
|
|
},
|
|
"selling_price": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"fuel_type_id": 1,
|
|
"body_type_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"labor_hours": 1,
|
|
"selling_price": 100,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Service Group Pricings"
|
|
],
|
|
"summary": "Remove the specified service group pricing record.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-group-services": {
|
|
"get": {
|
|
"tags": [
|
|
"Service Group Services"
|
|
],
|
|
"summary": "Display a listing of service group services.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"hours": {
|
|
"type": "integer"
|
|
},
|
|
"tax_id": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"service_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"rate": 50,
|
|
"hours": 1,
|
|
"tax_id": 1,
|
|
"chart_of_account": "string",
|
|
"description": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Service Group Services"
|
|
],
|
|
"summary": "Store a newly created service group service.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"hours": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_group_id": 1,
|
|
"service_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"rate": 50,
|
|
"hours": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"hours": {
|
|
"type": "integer"
|
|
},
|
|
"tax_id": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"service_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"rate": 50,
|
|
"hours": 1,
|
|
"tax_id": 1,
|
|
"chart_of_account": "string",
|
|
"description": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-group-services/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Service Group Services"
|
|
],
|
|
"summary": "Update the specified service group service.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"hours": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_group_id": 1,
|
|
"service_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"rate": 50,
|
|
"hours": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"service_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate_type": {
|
|
"type": "string"
|
|
},
|
|
"labor_rate_id": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"hours": {
|
|
"type": "integer"
|
|
},
|
|
"tax_id": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"service_id": 1,
|
|
"rate_type": "flat_rate",
|
|
"labor_rate_id": 1,
|
|
"rate": 50,
|
|
"hours": 1,
|
|
"tax_id": 1,
|
|
"chart_of_account": "string",
|
|
"description": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Service Group Services"
|
|
],
|
|
"summary": "Remove the specified service group service.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-group-parts": {
|
|
"get": {
|
|
"tags": [
|
|
"Service Group Parts"
|
|
],
|
|
"summary": "Display a listing of service group parts.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"tax_id": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 1,
|
|
"rate": 25,
|
|
"tax_id": 1,
|
|
"chart_of_account": "string",
|
|
"description": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Service Group Parts"
|
|
],
|
|
"summary": "Store a newly created service group part.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"tax_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_group_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 1,
|
|
"rate": 25,
|
|
"tax_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"tax_id": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 1,
|
|
"rate": 25,
|
|
"tax_id": 1,
|
|
"chart_of_account": "string",
|
|
"description": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/service-group-parts/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Service Group Parts"
|
|
],
|
|
"summary": "Update the specified service group part.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"tax_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"service_group_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 1,
|
|
"rate": 25,
|
|
"tax_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"service_group_id": {
|
|
"type": "integer"
|
|
},
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"tax_id": {
|
|
"type": "integer"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"service_group_id": 1,
|
|
"part_id": 1,
|
|
"quantity": 1,
|
|
"rate": 25,
|
|
"tax_id": 1,
|
|
"chart_of_account": "string",
|
|
"description": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Service Group Parts"
|
|
],
|
|
"summary": "Remove the specified service group part.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoice-labels": {
|
|
"get": {
|
|
"tags": [
|
|
"Invoice Labels"
|
|
],
|
|
"summary": "Display a listing of invoice labels.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Priority",
|
|
"color_code": "#FF6600",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Invoice Labels"
|
|
],
|
|
"summary": "Store a newly created invoice label.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Priority",
|
|
"color_code": "#FF5733"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Priority",
|
|
"color_code": "#FF6600",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoice-labels/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Invoice Labels"
|
|
],
|
|
"summary": "Update the specified invoice label.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Priority",
|
|
"color_code": "#FF5733"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Priority",
|
|
"color_code": "#FF6600",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Invoice Labels"
|
|
],
|
|
"summary": "Remove the specified invoice label.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoices": {
|
|
"get": {
|
|
"tags": [
|
|
"Invoices"
|
|
],
|
|
"summary": "Display a listing of invoices.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"kms_in": {
|
|
"type": "integer"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurer_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_to_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_date": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_sequence_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"invoice_title": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"terms_and_conditions": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"received_payment": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"deposit_to": {
|
|
"type": "string"
|
|
},
|
|
"amount": {
|
|
"type": "integer"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"subject": "Invoice for Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"kms_in": 50000,
|
|
"has_insurance": false,
|
|
"insurer_id": 1,
|
|
"invoice_to_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_date": "2026-03-31",
|
|
"due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"invoice_sequence_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"invoice_title": "Tax Invoice",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"terms_and_conditions": "string",
|
|
"status": "draft",
|
|
"received_payment": 0,
|
|
"payment_mode_id": 1,
|
|
"deposit_to": "string",
|
|
"amount": 0,
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Invoices"
|
|
],
|
|
"summary": "Store a newly created invoice.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_date": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_sequence_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"subject": "Invoice for Service",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"estimate_id": 1,
|
|
"invoice_date": "2026-03-31",
|
|
"due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"invoice_sequence_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "draft",
|
|
"discount": "no"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"estimate_id": {
|
|
"type": "integer"
|
|
},
|
|
"kms_in": {
|
|
"type": "integer"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurer_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_to_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_date": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_sequence_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"invoice_title": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"terms_and_conditions": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"received_payment": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"deposit_to": {
|
|
"type": "string"
|
|
},
|
|
"amount": {
|
|
"type": "integer"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Invoice for Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"estimate_id": 1,
|
|
"kms_in": 50000,
|
|
"has_insurance": false,
|
|
"insurer_id": 1,
|
|
"invoice_to_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_date": "2026-03-31",
|
|
"due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"invoice_sequence_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"invoice_title": "Tax Invoice",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"terms_and_conditions": "string",
|
|
"status": "draft",
|
|
"received_payment": 0,
|
|
"payment_mode_id": 1,
|
|
"deposit_to": "string",
|
|
"amount": 0,
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoices/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Invoices"
|
|
],
|
|
"summary": "GET /api/invoices/{id}",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"kms_in": {
|
|
"type": "integer"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurer_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_to_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_date": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_sequence_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"invoice_title": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"terms_and_conditions": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"received_payment": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"deposit_to": {
|
|
"type": "string"
|
|
},
|
|
"amount": {
|
|
"type": "integer"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Invoice for Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"kms_in": 50000,
|
|
"has_insurance": false,
|
|
"insurer_id": 1,
|
|
"invoice_to_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_date": "2026-03-31",
|
|
"due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"invoice_sequence_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"invoice_title": "Tax Invoice",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"terms_and_conditions": "string",
|
|
"status": "draft",
|
|
"received_payment": 0,
|
|
"payment_mode_id": 1,
|
|
"deposit_to": "string",
|
|
"amount": 0,
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Invoices"
|
|
],
|
|
"summary": "Update the specified invoice.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_date": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_sequence_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"subject": "Invoice for Service",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"invoice_date": "2026-03-31",
|
|
"due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"invoice_sequence_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "draft",
|
|
"discount": "no"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"kms_in": {
|
|
"type": "integer"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurer_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_to_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_date": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_sequence_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"invoice_title": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"terms_and_conditions": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"received_payment": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"deposit_to": {
|
|
"type": "string"
|
|
},
|
|
"amount": {
|
|
"type": "integer"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Invoice for Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"kms_in": 50000,
|
|
"has_insurance": false,
|
|
"insurer_id": 1,
|
|
"invoice_to_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_date": "2026-03-31",
|
|
"due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"invoice_sequence_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"invoice_title": "Tax Invoice",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"terms_and_conditions": "string",
|
|
"status": "draft",
|
|
"received_payment": 0,
|
|
"payment_mode_id": 1,
|
|
"deposit_to": "string",
|
|
"amount": 0,
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Invoices"
|
|
],
|
|
"summary": "Remove the specified invoice.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoices/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Invoices"
|
|
],
|
|
"summary": "Add attachments to an invoice.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"kms_in": {
|
|
"type": "integer"
|
|
},
|
|
"has_insurance": {
|
|
"type": "boolean"
|
|
},
|
|
"insurer_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_to_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_date": {
|
|
"type": "string"
|
|
},
|
|
"due_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_terms_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_sequence_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_number": {
|
|
"type": "string"
|
|
},
|
|
"invoice_title": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"terms_and_conditions": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"received_payment": {
|
|
"type": "integer"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"deposit_to": {
|
|
"type": "string"
|
|
},
|
|
"amount": {
|
|
"type": "integer"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Invoice for Job Card 001",
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"kms_in": 50000,
|
|
"has_insurance": false,
|
|
"insurer_id": 1,
|
|
"invoice_to_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_date": "2026-03-31",
|
|
"due_date": "2026-04-14",
|
|
"payment_terms_id": 1,
|
|
"invoice_sequence_id": 1,
|
|
"invoice_number": "INV-001",
|
|
"invoice_title": "Tax Invoice",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"terms_and_conditions": "string",
|
|
"status": "draft",
|
|
"received_payment": 0,
|
|
"payment_mode_id": 1,
|
|
"deposit_to": "string",
|
|
"amount": 0,
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoices/{id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Invoices"
|
|
],
|
|
"summary": "Delete one attachment.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoice-documents": {
|
|
"get": {
|
|
"tags": [
|
|
"Invoice Documents"
|
|
],
|
|
"summary": "Display a listing of invoice documents.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"document_expire": {
|
|
"type": "string"
|
|
},
|
|
"document_file": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"vehicle_id": 1,
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"document_number": "DOC-001",
|
|
"document_expire": "2027-03-31",
|
|
"document_file": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Invoice Documents"
|
|
],
|
|
"summary": "Store a newly created invoice document.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"show_in_invoice": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"invoice_id": 1,
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"document_type_id": 1,
|
|
"document_number": "DOC-001",
|
|
"show_in_invoice": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"document_expire": {
|
|
"type": "string"
|
|
},
|
|
"document_file": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"vehicle_id": 1,
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"document_number": "DOC-001",
|
|
"document_expire": "2027-03-31",
|
|
"document_file": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoice-documents/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Invoice Documents"
|
|
],
|
|
"summary": "Update the specified invoice document.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"show_in_invoice": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"invoice_id": 1,
|
|
"customer_id": 1,
|
|
"vehicle_id": 1,
|
|
"document_type_id": 1,
|
|
"document_number": "DOC-001",
|
|
"show_in_invoice": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vehicle_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"document_number": {
|
|
"type": "string"
|
|
},
|
|
"document_expire": {
|
|
"type": "string"
|
|
},
|
|
"document_file": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"vehicle_id": 1,
|
|
"document_type_id": 1,
|
|
"customer_id": 1,
|
|
"document_number": "DOC-001",
|
|
"document_expire": "2027-03-31",
|
|
"document_file": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Invoice Documents"
|
|
],
|
|
"summary": "Remove the specified invoice document.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoice-notes": {
|
|
"get": {
|
|
"tags": [
|
|
"Invoice Notes"
|
|
],
|
|
"summary": "Display a listing of invoice notes.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Invoice Notes"
|
|
],
|
|
"summary": "Store a newly created invoice note.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"invoice_id": 1,
|
|
"note": "Please process this invoice urgently."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/invoice-notes/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Invoice Notes"
|
|
],
|
|
"summary": "Update the specified invoice note.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"invoice_id": 1,
|
|
"note": "Please process this invoice urgently."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"color_code": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Urgent",
|
|
"color_code": "#FF0000",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Invoice Notes"
|
|
],
|
|
"summary": "Remove the specified invoice note.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/reasons": {
|
|
"get": {
|
|
"tags": [
|
|
"Reasons"
|
|
],
|
|
"summary": "Display a listing of reasons.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Defective part",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Reasons"
|
|
],
|
|
"summary": "Store a newly created reason.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Customer Request"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Defective part",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/reasons/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Reasons"
|
|
],
|
|
"summary": "Update the specified reason.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Customer Request"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Defective part",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Reasons"
|
|
],
|
|
"summary": "Remove the specified reason.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credit-notes": {
|
|
"get": {
|
|
"tags": [
|
|
"Credit Notes"
|
|
],
|
|
"summary": "Display a listing of credit notes.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_invoice": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"subject": "Credit Note for Invoice 001",
|
|
"credit_invoice": "CN-001",
|
|
"customer_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_id": 1,
|
|
"date": "2026-03-31",
|
|
"reason_id": 1,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Credit Notes"
|
|
],
|
|
"summary": "Store a newly created credit note.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"subject": "Credit Note for Invoice 001",
|
|
"customer_id": 1,
|
|
"invoice_id": 1,
|
|
"date": "2026-03-31",
|
|
"reason_id": 1,
|
|
"department_id": 1,
|
|
"status": "open"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_invoice": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Credit Note for Invoice 001",
|
|
"credit_invoice": "CN-001",
|
|
"customer_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_id": 1,
|
|
"date": "2026-03-31",
|
|
"reason_id": 1,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credit-notes/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Credit Notes"
|
|
],
|
|
"summary": "Update the specified credit note.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"subject": "Credit Note for Invoice 001",
|
|
"customer_id": 1,
|
|
"invoice_id": 1,
|
|
"date": "2026-03-31",
|
|
"reason_id": 1,
|
|
"department_id": 1,
|
|
"status": "open"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_invoice": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Credit Note for Invoice 001",
|
|
"credit_invoice": "CN-001",
|
|
"customer_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_id": 1,
|
|
"date": "2026-03-31",
|
|
"reason_id": 1,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Credit Notes"
|
|
],
|
|
"summary": "Remove the specified credit note.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credit-notes/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Credit Notes"
|
|
],
|
|
"summary": "Add attachment(s) to credit note.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_invoice": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Credit Note for Invoice 001",
|
|
"credit_invoice": "CN-001",
|
|
"customer_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_id": 1,
|
|
"date": "2026-03-31",
|
|
"reason_id": 1,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credit-notes/{id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Credit Notes"
|
|
],
|
|
"summary": "Delete one attachment.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credit-notes/{id}/add-internal-note": {
|
|
"post": {
|
|
"tags": [
|
|
"Credit Notes"
|
|
],
|
|
"summary": "Add internal note to credit note.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"note": "Internal note for the credit note."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_invoice": {
|
|
"type": "string"
|
|
},
|
|
"customer_id": {
|
|
"type": "integer"
|
|
},
|
|
"billing_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"delivery_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Credit Note for Invoice 001",
|
|
"credit_invoice": "CN-001",
|
|
"customer_id": 1,
|
|
"billing_address_id": 1,
|
|
"delivery_address_id": 1,
|
|
"invoice_id": 1,
|
|
"date": "2026-03-31",
|
|
"reason_id": 1,
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credit-notes/{id}/edit-internal-note": {
|
|
"delete": {
|
|
"tags": [
|
|
"Credit Notes"
|
|
],
|
|
"summary": "Edit one internal note. (route currently uses DELETE verb)",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/credit-notes/{id}/delete-internal-note": {
|
|
"delete": {
|
|
"tags": [
|
|
"Credit Notes"
|
|
],
|
|
"summary": "Delete one internal note.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-mades": {
|
|
"get": {
|
|
"tags": [
|
|
"Payment Mades"
|
|
],
|
|
"summary": "Display a listing of payment made records.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_for": {
|
|
"type": "string"
|
|
},
|
|
"payment_made": {
|
|
"type": "integer"
|
|
},
|
|
"payment_number": {
|
|
"type": "string"
|
|
},
|
|
"payment_reference": {
|
|
"type": "string"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"paid_through": {
|
|
"type": "string"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"excess_amount_will_be_deposited": {
|
|
"type": "integer"
|
|
},
|
|
"amount_paid": {
|
|
"type": "integer"
|
|
},
|
|
"amount_used_for_payments": {
|
|
"type": "integer"
|
|
},
|
|
"amount_in_excess": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"vendor_id": 1,
|
|
"employee_id": 1,
|
|
"payment_for": "bill",
|
|
"payment_made": 500,
|
|
"payment_number": "PAY-001",
|
|
"payment_reference": "string",
|
|
"payment_date": "2026-03-31",
|
|
"payment_mode_id": 1,
|
|
"paid_through": "string",
|
|
"notes": "string",
|
|
"excess_amount_will_be_deposited": 0,
|
|
"amount_paid": 500,
|
|
"amount_used_for_payments": 500,
|
|
"amount_in_excess": 0,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Payment Mades"
|
|
],
|
|
"summary": "Store a newly created payment made record.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_for": {
|
|
"type": "string"
|
|
},
|
|
"payment_made": {
|
|
"type": "integer"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"vendor_id": 1,
|
|
"payment_for": "bill",
|
|
"payment_made": 500,
|
|
"payment_date": "2026-03-31",
|
|
"payment_mode_id": 1,
|
|
"notes": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_for": {
|
|
"type": "string"
|
|
},
|
|
"payment_made": {
|
|
"type": "integer"
|
|
},
|
|
"payment_number": {
|
|
"type": "string"
|
|
},
|
|
"payment_reference": {
|
|
"type": "string"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"paid_through": {
|
|
"type": "string"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"excess_amount_will_be_deposited": {
|
|
"type": "integer"
|
|
},
|
|
"amount_paid": {
|
|
"type": "integer"
|
|
},
|
|
"amount_used_for_payments": {
|
|
"type": "integer"
|
|
},
|
|
"amount_in_excess": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"vendor_id": 1,
|
|
"employee_id": 1,
|
|
"payment_for": "bill",
|
|
"payment_made": 500,
|
|
"payment_number": "PAY-001",
|
|
"payment_reference": "string",
|
|
"payment_date": "2026-03-31",
|
|
"payment_mode_id": 1,
|
|
"paid_through": "string",
|
|
"notes": "string",
|
|
"excess_amount_will_be_deposited": 0,
|
|
"amount_paid": 500,
|
|
"amount_used_for_payments": 500,
|
|
"amount_in_excess": 0,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-mades/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Payment Mades"
|
|
],
|
|
"summary": "Update the specified payment made record.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_for": {
|
|
"type": "string"
|
|
},
|
|
"payment_made": {
|
|
"type": "integer"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"vendor_id": 1,
|
|
"payment_for": "bill",
|
|
"payment_made": 500,
|
|
"payment_date": "2026-03-31",
|
|
"payment_mode_id": 1,
|
|
"notes": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_for": {
|
|
"type": "string"
|
|
},
|
|
"payment_made": {
|
|
"type": "integer"
|
|
},
|
|
"payment_number": {
|
|
"type": "string"
|
|
},
|
|
"payment_reference": {
|
|
"type": "string"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"paid_through": {
|
|
"type": "string"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"excess_amount_will_be_deposited": {
|
|
"type": "integer"
|
|
},
|
|
"amount_paid": {
|
|
"type": "integer"
|
|
},
|
|
"amount_used_for_payments": {
|
|
"type": "integer"
|
|
},
|
|
"amount_in_excess": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"vendor_id": 1,
|
|
"employee_id": 1,
|
|
"payment_for": "bill",
|
|
"payment_made": 500,
|
|
"payment_number": "PAY-001",
|
|
"payment_reference": "string",
|
|
"payment_date": "2026-03-31",
|
|
"payment_mode_id": 1,
|
|
"paid_through": "string",
|
|
"notes": "string",
|
|
"excess_amount_will_be_deposited": 0,
|
|
"amount_paid": 500,
|
|
"amount_used_for_payments": 500,
|
|
"amount_in_excess": 0,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Payment Mades"
|
|
],
|
|
"summary": "Remove the specified payment made record.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-mades/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Payment Mades"
|
|
],
|
|
"summary": "Add attachment(s) to payment made.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"payment_for": {
|
|
"type": "string"
|
|
},
|
|
"payment_made": {
|
|
"type": "integer"
|
|
},
|
|
"payment_number": {
|
|
"type": "string"
|
|
},
|
|
"payment_reference": {
|
|
"type": "string"
|
|
},
|
|
"payment_date": {
|
|
"type": "string"
|
|
},
|
|
"payment_mode_id": {
|
|
"type": "integer"
|
|
},
|
|
"paid_through": {
|
|
"type": "string"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"excess_amount_will_be_deposited": {
|
|
"type": "integer"
|
|
},
|
|
"amount_paid": {
|
|
"type": "integer"
|
|
},
|
|
"amount_used_for_payments": {
|
|
"type": "integer"
|
|
},
|
|
"amount_in_excess": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"vendor_id": 1,
|
|
"employee_id": 1,
|
|
"payment_for": "bill",
|
|
"payment_made": 500,
|
|
"payment_number": "PAY-001",
|
|
"payment_reference": "string",
|
|
"payment_date": "2026-03-31",
|
|
"payment_mode_id": 1,
|
|
"paid_through": "string",
|
|
"notes": "string",
|
|
"excess_amount_will_be_deposited": 0,
|
|
"amount_paid": 500,
|
|
"amount_used_for_payments": 500,
|
|
"amount_in_excess": 0,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/payment-mades/{id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Payment Mades"
|
|
],
|
|
"summary": "Delete one attachment from payment made.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendor-credits": {
|
|
"get": {
|
|
"tags": [
|
|
"Vendor Credits"
|
|
],
|
|
"summary": "Display a listing of vendor credits.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_credit_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"subject": "Vendor Credit for Bill 001",
|
|
"credit_number": "VC-001",
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"bill_id": 1,
|
|
"order_number": "string",
|
|
"vendor_credit_date": "2026-03-31",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Vendor Credits"
|
|
],
|
|
"summary": "Store a newly created vendor credit.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_credit_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"subject": "Vendor Credit for Bill 001",
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"bill_id": 1,
|
|
"vendor_credit_date": "2026-03-31",
|
|
"department_id": 1,
|
|
"status": "open",
|
|
"discount": "no"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_credit_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Vendor Credit for Bill 001",
|
|
"credit_number": "VC-001",
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"bill_id": 1,
|
|
"order_number": "string",
|
|
"vendor_credit_date": "2026-03-31",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendor-credits/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Vendor Credits"
|
|
],
|
|
"summary": "Update the specified vendor credit.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_credit_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"subject": "Vendor Credit for Bill 001",
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"bill_id": 1,
|
|
"vendor_credit_date": "2026-03-31",
|
|
"department_id": 1,
|
|
"status": "open",
|
|
"discount": "no"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_credit_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Vendor Credit for Bill 001",
|
|
"credit_number": "VC-001",
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"bill_id": 1,
|
|
"order_number": "string",
|
|
"vendor_credit_date": "2026-03-31",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Vendor Credits"
|
|
],
|
|
"summary": "Remove the specified vendor credit.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendor-credits/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Vendor Credits"
|
|
],
|
|
"summary": "Add attachment(s) after creating vendor credit.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_credit_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Vendor Credit for Bill 001",
|
|
"credit_number": "VC-001",
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"bill_id": 1,
|
|
"order_number": "string",
|
|
"vendor_credit_date": "2026-03-31",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendor-credits/{id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Vendor Credits"
|
|
],
|
|
"summary": "Delete one vendor credit attachment.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendor-credits/{id}/add-internal-note": {
|
|
"post": {
|
|
"tags": [
|
|
"Vendor Credits"
|
|
],
|
|
"summary": "Add internal note after creating vendor credit.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"note": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"note": "Internal note for the vendor credit."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"subject": {
|
|
"type": "string"
|
|
},
|
|
"credit_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_id": {
|
|
"type": "integer"
|
|
},
|
|
"vendor_address_id": {
|
|
"type": "integer"
|
|
},
|
|
"bill_id": {
|
|
"type": "integer"
|
|
},
|
|
"order_number": {
|
|
"type": "string"
|
|
},
|
|
"vendor_credit_date": {
|
|
"type": "string"
|
|
},
|
|
"department_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"discount": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"subject": "Vendor Credit for Bill 001",
|
|
"credit_number": "VC-001",
|
|
"vendor_id": 1,
|
|
"vendor_address_id": 1,
|
|
"bill_id": 1,
|
|
"order_number": "string",
|
|
"vendor_credit_date": "2026-03-31",
|
|
"department_id": 1,
|
|
"notes": "string",
|
|
"status": "open",
|
|
"discount": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendor-credits/{id}/edit-internal-note": {
|
|
"delete": {
|
|
"tags": [
|
|
"Vendor Credits"
|
|
],
|
|
"summary": "Edit internal note. (route currently uses DELETE verb)",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/vendor-credits/{id}/delete-internal-note": {
|
|
"delete": {
|
|
"tags": [
|
|
"Vendor Credits"
|
|
],
|
|
"summary": "Delete internal note.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inventory-adjustments": {
|
|
"get": {
|
|
"tags": [
|
|
"Inventory Adjustments"
|
|
],
|
|
"summary": "Display a listing of inventory adjustments.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"reference_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"reference_number": "ADJ-001",
|
|
"date": "2026-03-31",
|
|
"chart_of_account": "string",
|
|
"reason_id": 1,
|
|
"job_card_id": 1,
|
|
"invoice_id": 1,
|
|
"notes": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Inventory Adjustments"
|
|
],
|
|
"summary": "Store a newly created inventory adjustment with parts.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"reference_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"reference_number": "ADJ-001",
|
|
"date": "2026-03-31",
|
|
"chart_of_account": "string",
|
|
"reason_id": 1,
|
|
"notes": "string",
|
|
"parts": [
|
|
{
|
|
"part_id": 1,
|
|
"quantity": 5,
|
|
"rate": 25
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"reference_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"reference_number": "ADJ-001",
|
|
"date": "2026-03-31",
|
|
"chart_of_account": "string",
|
|
"reason_id": 1,
|
|
"job_card_id": 1,
|
|
"invoice_id": 1,
|
|
"notes": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inventory-adjustments/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Inventory Adjustments"
|
|
],
|
|
"summary": "Update the specified inventory adjustment.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"reference_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"parts": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"part_id": {
|
|
"type": "integer"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"reference_number": "ADJ-001",
|
|
"date": "2026-03-31",
|
|
"chart_of_account": "string",
|
|
"reason_id": 1,
|
|
"notes": "string",
|
|
"parts": [
|
|
{
|
|
"part_id": 1,
|
|
"quantity": 5,
|
|
"rate": 25
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"reference_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"reference_number": "ADJ-001",
|
|
"date": "2026-03-31",
|
|
"chart_of_account": "string",
|
|
"reason_id": 1,
|
|
"job_card_id": 1,
|
|
"invoice_id": 1,
|
|
"notes": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Inventory Adjustments"
|
|
],
|
|
"summary": "Remove the specified inventory adjustment.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inventory-adjustments/{id}/add-attachment": {
|
|
"post": {
|
|
"tags": [
|
|
"Inventory Adjustments"
|
|
],
|
|
"summary": "Add attachment(s) to inventory adjustment.",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachments[]": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"reference_number": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"chart_of_account": {
|
|
"type": "string"
|
|
},
|
|
"reason_id": {
|
|
"type": "integer"
|
|
},
|
|
"job_card_id": {
|
|
"type": "integer"
|
|
},
|
|
"invoice_id": {
|
|
"type": "integer"
|
|
},
|
|
"notes": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"reference_number": "ADJ-001",
|
|
"date": "2026-03-31",
|
|
"chart_of_account": "string",
|
|
"reason_id": 1,
|
|
"job_card_id": 1,
|
|
"invoice_id": 1,
|
|
"notes": "string",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/inventory-adjustments/{id}/delete-attachment": {
|
|
"delete": {
|
|
"tags": [
|
|
"Inventory Adjustments"
|
|
],
|
|
"summary": "Delete one attachment from inventory adjustment.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"attachment_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/time-sheets": {
|
|
"get": {
|
|
"tags": [
|
|
"Time Sheets"
|
|
],
|
|
"summary": "Display a listing of time sheets.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"clock_in": {
|
|
"type": "string"
|
|
},
|
|
"clock_out": {
|
|
"type": "string"
|
|
},
|
|
"duration": {
|
|
"type": "string"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"activity_type": {
|
|
"type": "string"
|
|
},
|
|
"order_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"clock_in": "09:00:00",
|
|
"clock_out": "17:00:00",
|
|
"duration": "08:00:00",
|
|
"total": 8,
|
|
"note": "string",
|
|
"activity_type": "general",
|
|
"order_id": 1,
|
|
"task_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Time Sheets"
|
|
],
|
|
"summary": "Store a newly created time sheet.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"clock_in": {
|
|
"type": "string"
|
|
},
|
|
"clock_out": {
|
|
"type": "string"
|
|
},
|
|
"activity_type": {
|
|
"type": "string"
|
|
},
|
|
"order_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"clock_in": "09:00:00",
|
|
"clock_out": "17:00:00",
|
|
"activity_type": "general",
|
|
"order_id": 1,
|
|
"task_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"clock_in": {
|
|
"type": "string"
|
|
},
|
|
"clock_out": {
|
|
"type": "string"
|
|
},
|
|
"duration": {
|
|
"type": "string"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"activity_type": {
|
|
"type": "string"
|
|
},
|
|
"order_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"clock_in": "09:00:00",
|
|
"clock_out": "17:00:00",
|
|
"duration": "08:00:00",
|
|
"total": 8,
|
|
"note": "string",
|
|
"activity_type": "general",
|
|
"order_id": 1,
|
|
"task_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/time-sheets/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Time Sheets"
|
|
],
|
|
"summary": "Update the specified time sheet.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"clock_in": {
|
|
"type": "string"
|
|
},
|
|
"clock_out": {
|
|
"type": "string"
|
|
},
|
|
"activity_type": {
|
|
"type": "string"
|
|
},
|
|
"order_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"clock_in": "09:00:00",
|
|
"clock_out": "17:00:00",
|
|
"activity_type": "general",
|
|
"order_id": 1,
|
|
"task_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"clock_in": {
|
|
"type": "string"
|
|
},
|
|
"clock_out": {
|
|
"type": "string"
|
|
},
|
|
"duration": {
|
|
"type": "string"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"activity_type": {
|
|
"type": "string"
|
|
},
|
|
"order_id": {
|
|
"type": "integer"
|
|
},
|
|
"task_id": {
|
|
"type": "integer"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"clock_in": "09:00:00",
|
|
"clock_out": "17:00:00",
|
|
"duration": "08:00:00",
|
|
"total": 8,
|
|
"note": "string",
|
|
"activity_type": "general",
|
|
"order_id": 1,
|
|
"task_id": 1,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Time Sheets"
|
|
],
|
|
"summary": "Remove the specified time sheet.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/time-sheet/clock-in": {
|
|
"post": {
|
|
"tags": [
|
|
"Time Sheet"
|
|
],
|
|
"summary": "Clock in employee for a new time sheet entry.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"activity_type": {
|
|
"type": "string"
|
|
},
|
|
"order_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"task_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"note": "Starting work shift.",
|
|
"activity_type": "general",
|
|
"order_id": null,
|
|
"task_id": null
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"clock_in": {
|
|
"type": "string"
|
|
},
|
|
"clock_out": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"duration": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"total": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"activity_type": {
|
|
"type": "string"
|
|
},
|
|
"order_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"task_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"calculated_total_cost": {
|
|
"type": "integer"
|
|
},
|
|
"employee": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Clock in successful.",
|
|
"data": {
|
|
"id": 1,
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"clock_in": "09:00:00",
|
|
"clock_out": null,
|
|
"duration": null,
|
|
"total": null,
|
|
"note": "Starting work shift.",
|
|
"activity_type": "general",
|
|
"order_id": null,
|
|
"task_id": null,
|
|
"created_at": "2026-03-31T09:00:00.000000Z",
|
|
"updated_at": "2026-03-31T09:00:00.000000Z",
|
|
"calculated_total_cost": 0,
|
|
"employee": {
|
|
"id": 1,
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane@example.com"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/time-sheet/clock-out": {
|
|
"post": {
|
|
"tags": [
|
|
"Time Sheet"
|
|
],
|
|
"summary": "Clock out employee from the latest open entry.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"time_sheet_id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"time_sheet_id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"employee_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"clock_in": {
|
|
"type": "string"
|
|
},
|
|
"clock_out": {
|
|
"type": "string"
|
|
},
|
|
"duration": {
|
|
"type": "string"
|
|
},
|
|
"total": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"activity_type": {
|
|
"type": "string"
|
|
},
|
|
"order_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"task_id": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"calculated_total_cost": {
|
|
"type": "integer"
|
|
},
|
|
"employee": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"first_name": {
|
|
"type": "string"
|
|
},
|
|
"last_name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Clock out successful.",
|
|
"data": {
|
|
"id": 1,
|
|
"employee_id": 1,
|
|
"date": "2026-03-31",
|
|
"clock_in": "09:00:00",
|
|
"clock_out": "17:00:00",
|
|
"duration": "08:00:00",
|
|
"total": "08:00:00",
|
|
"note": "Starting work shift.",
|
|
"activity_type": "general",
|
|
"order_id": null,
|
|
"task_id": null,
|
|
"created_at": "2026-03-31T09:00:00.000000Z",
|
|
"updated_at": "2026-03-31T09:00:00.000000Z",
|
|
"calculated_total_cost": 0,
|
|
"employee": {
|
|
"id": 1,
|
|
"first_name": "Jane",
|
|
"last_name": "Smith",
|
|
"email": "jane@example.com"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/shop-timings": {
|
|
"get": {
|
|
"tags": [
|
|
"Shop Timings"
|
|
],
|
|
"summary": "Display a listing of shop timings.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"in_time": {
|
|
"type": "string"
|
|
},
|
|
"out_time": {
|
|
"type": "string"
|
|
},
|
|
"full_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"half_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"punch_in": {
|
|
"type": "string"
|
|
},
|
|
"punch_out": {
|
|
"type": "string"
|
|
},
|
|
"before_time": {
|
|
"type": "string"
|
|
},
|
|
"after_time": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Standard Hours",
|
|
"in_time": "08:00",
|
|
"out_time": "17:00",
|
|
"full_day_hours": "09:00",
|
|
"half_day_hours": "04:30",
|
|
"punch_in": "07:45",
|
|
"punch_out": "17:15",
|
|
"before_time": "00:15",
|
|
"after_time": "00:15",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Shop Timings"
|
|
],
|
|
"summary": "Store a newly created shop timing.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"in_time": {
|
|
"type": "string"
|
|
},
|
|
"out_time": {
|
|
"type": "string"
|
|
},
|
|
"full_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"half_day_hours": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Morning Shift",
|
|
"in_time": "08:00:00",
|
|
"out_time": "17:00:00",
|
|
"full_day_hours": "08:00:00",
|
|
"half_day_hours": "04:00:00"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"in_time": {
|
|
"type": "string"
|
|
},
|
|
"out_time": {
|
|
"type": "string"
|
|
},
|
|
"full_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"half_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"punch_in": {
|
|
"type": "string"
|
|
},
|
|
"punch_out": {
|
|
"type": "string"
|
|
},
|
|
"before_time": {
|
|
"type": "string"
|
|
},
|
|
"after_time": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Hours",
|
|
"in_time": "08:00",
|
|
"out_time": "17:00",
|
|
"full_day_hours": "09:00",
|
|
"half_day_hours": "04:30",
|
|
"punch_in": "07:45",
|
|
"punch_out": "17:15",
|
|
"before_time": "00:15",
|
|
"after_time": "00:15",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/shop-timings/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Shop Timings"
|
|
],
|
|
"summary": "Update the specified shop timing.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"in_time": {
|
|
"type": "string"
|
|
},
|
|
"out_time": {
|
|
"type": "string"
|
|
},
|
|
"full_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"half_day_hours": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Morning Shift",
|
|
"in_time": "08:00:00",
|
|
"out_time": "17:00:00",
|
|
"full_day_hours": "08:00:00",
|
|
"half_day_hours": "04:00:00"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"in_time": {
|
|
"type": "string"
|
|
},
|
|
"out_time": {
|
|
"type": "string"
|
|
},
|
|
"full_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"half_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"punch_in": {
|
|
"type": "string"
|
|
},
|
|
"punch_out": {
|
|
"type": "string"
|
|
},
|
|
"before_time": {
|
|
"type": "string"
|
|
},
|
|
"after_time": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Hours",
|
|
"in_time": "08:00",
|
|
"out_time": "17:00",
|
|
"full_day_hours": "09:00",
|
|
"half_day_hours": "04:30",
|
|
"punch_in": "07:45",
|
|
"punch_out": "17:15",
|
|
"before_time": "00:15",
|
|
"after_time": "00:15",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Shop Timings"
|
|
],
|
|
"summary": "Remove the specified shop timing.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-default-shop-timing": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Default Shop Timing"
|
|
],
|
|
"summary": "Set a shop timing as default.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"in_time": {
|
|
"type": "string"
|
|
},
|
|
"out_time": {
|
|
"type": "string"
|
|
},
|
|
"full_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"half_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"punch_in": {
|
|
"type": "string"
|
|
},
|
|
"punch_out": {
|
|
"type": "string"
|
|
},
|
|
"before_time": {
|
|
"type": "string"
|
|
},
|
|
"after_time": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Hours",
|
|
"in_time": "08:00",
|
|
"out_time": "17:00",
|
|
"full_day_hours": "09:00",
|
|
"half_day_hours": "04:30",
|
|
"punch_in": "07:45",
|
|
"punch_out": "17:15",
|
|
"before_time": "00:15",
|
|
"after_time": "00:15",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-default-shop-timing": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Default Shop Timing"
|
|
],
|
|
"summary": "Remove default from a shop timing.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"in_time": {
|
|
"type": "string"
|
|
},
|
|
"out_time": {
|
|
"type": "string"
|
|
},
|
|
"full_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"half_day_hours": {
|
|
"type": "string"
|
|
},
|
|
"punch_in": {
|
|
"type": "string"
|
|
},
|
|
"punch_out": {
|
|
"type": "string"
|
|
},
|
|
"before_time": {
|
|
"type": "string"
|
|
},
|
|
"after_time": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Hours",
|
|
"in_time": "08:00",
|
|
"out_time": "17:00",
|
|
"full_day_hours": "09:00",
|
|
"half_day_hours": "04:30",
|
|
"punch_in": "07:45",
|
|
"punch_out": "17:15",
|
|
"before_time": "00:15",
|
|
"after_time": "00:15",
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/holiday-years": {
|
|
"get": {
|
|
"tags": [
|
|
"Holiday Years"
|
|
],
|
|
"summary": "List all holiday years.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"holiday_year_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_optional": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"holiday_year_id": 1,
|
|
"date": "2026-12-25",
|
|
"name": "Christmas Day",
|
|
"is_optional": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Holiday Years"
|
|
],
|
|
"summary": "Add a new holiday year.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"year": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"year": 2026
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"holiday_year_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_optional": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"holiday_year_id": 1,
|
|
"date": "2026-12-25",
|
|
"name": "Christmas Day",
|
|
"is_optional": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/holidays": {
|
|
"get": {
|
|
"tags": [
|
|
"Holidays"
|
|
],
|
|
"summary": "List holidays.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"holiday_year_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_optional": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"holiday_year_id": 1,
|
|
"date": "2026-12-25",
|
|
"name": "Christmas Day",
|
|
"is_optional": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Holidays"
|
|
],
|
|
"summary": "Store a newly created holiday.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"holiday_year_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"holiday_year_id": 1,
|
|
"date": "2026-12-25",
|
|
"name": "Christmas Day"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"holiday_year_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_optional": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"holiday_year_id": 1,
|
|
"date": "2026-12-25",
|
|
"name": "Christmas Day",
|
|
"is_optional": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/holidays/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Holidays"
|
|
],
|
|
"summary": "Update the specified holiday.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"holiday_year_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"holiday_year_id": 1,
|
|
"date": "2026-12-25",
|
|
"name": "Christmas Day"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"holiday_year_id": {
|
|
"type": "integer"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"is_optional": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"holiday_year_id": 1,
|
|
"date": "2026-12-25",
|
|
"name": "Christmas Day",
|
|
"is_optional": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Holidays"
|
|
],
|
|
"summary": "Remove the specified holiday.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/shop-calenders": {
|
|
"get": {
|
|
"tags": [
|
|
"Shop Calenders"
|
|
],
|
|
"summary": "Display a listing of shop calendars.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"days": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"day_number": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "Standard Work Week",
|
|
"is_default": false,
|
|
"days": [
|
|
{
|
|
"id": 1,
|
|
"shop_calender_id": 1,
|
|
"type": "full_day",
|
|
"day_number": 1
|
|
}
|
|
],
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Shop Calenders"
|
|
],
|
|
"summary": "Store a newly created shop calendar.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "Standard Work Calendar",
|
|
"is_default": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"days": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"day_number": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Work Week",
|
|
"is_default": false,
|
|
"days": [
|
|
{
|
|
"id": 1,
|
|
"shop_calender_id": 1,
|
|
"type": "full_day",
|
|
"day_number": 1
|
|
}
|
|
],
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/shop-calenders/{id}": {
|
|
"delete": {
|
|
"tags": [
|
|
"Shop Calenders"
|
|
],
|
|
"summary": "Remove the specified shop calendar.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/shop-calenders/{id}/update-day-type": {
|
|
"post": {
|
|
"tags": [
|
|
"Shop Calenders"
|
|
],
|
|
"summary": "Update day type for one day in a shop calendar.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"day_number": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"day_number": 1,
|
|
"type": "full_day"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"days": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"day_number": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Work Week",
|
|
"is_default": false,
|
|
"days": [
|
|
{
|
|
"id": 1,
|
|
"shop_calender_id": 1,
|
|
"type": "full_day",
|
|
"day_number": 1
|
|
}
|
|
],
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-default-shop-calender": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Default Shop Calender"
|
|
],
|
|
"summary": "Set a shop calendar as default.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"days": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"day_number": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Work Week",
|
|
"is_default": false,
|
|
"days": [
|
|
{
|
|
"id": 1,
|
|
"shop_calender_id": 1,
|
|
"type": "full_day",
|
|
"day_number": 1
|
|
}
|
|
],
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-default-shop-calender": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Default Shop Calender"
|
|
],
|
|
"summary": "Remove default from a shop calendar.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"days": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_calender_id": {
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"day_number": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "Standard Work Week",
|
|
"is_default": false,
|
|
"days": [
|
|
{
|
|
"id": 1,
|
|
"shop_calender_id": 1,
|
|
"type": "full_day",
|
|
"day_number": 1
|
|
}
|
|
],
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/settings": {
|
|
"get": {
|
|
"tags": [
|
|
"Settings"
|
|
],
|
|
"summary": "Display current application settings.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternative_phone": {
|
|
"type": "string"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"time_zone": {
|
|
"type": "string"
|
|
},
|
|
"upi_id": {
|
|
"type": "string"
|
|
},
|
|
"first_day_of_work": {
|
|
"type": "string"
|
|
},
|
|
"latitude": {
|
|
"type": "string"
|
|
},
|
|
"longitude": {
|
|
"type": "string"
|
|
},
|
|
"bank_details": {
|
|
"type": "string"
|
|
},
|
|
"first_address_line": {
|
|
"type": "string"
|
|
},
|
|
"second_address_line": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"address": {
|
|
"type": "string"
|
|
},
|
|
"logo": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"security": {
|
|
"type": "string"
|
|
},
|
|
"privacy_policy": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"name": "My Workshop",
|
|
"email": "workshop@example.com",
|
|
"phone": "+971501234567",
|
|
"alternative_phone": "string",
|
|
"website": "string",
|
|
"time_zone": "Asia/Dubai",
|
|
"upi_id": "string",
|
|
"first_day_of_work": "monday",
|
|
"latitude": "string",
|
|
"longitude": "string",
|
|
"bank_details": "string",
|
|
"first_address_line": "string",
|
|
"second_address_line": "string",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "string",
|
|
"description": "string",
|
|
"address": "string",
|
|
"logo": "string",
|
|
"icon": "string",
|
|
"security": "string",
|
|
"privacy_policy": "string"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Settings"
|
|
],
|
|
"summary": "Create or update application settings.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"time_zone": {
|
|
"type": "string"
|
|
},
|
|
"first_day_of_work": {
|
|
"type": "string"
|
|
},
|
|
"first_address_line": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "My Workshop",
|
|
"email": "workshop@example.com",
|
|
"phone": "+971501234567",
|
|
"time_zone": "Asia/Dubai",
|
|
"first_day_of_work": "monday",
|
|
"first_address_line": "123 Main St",
|
|
"country_id": 1,
|
|
"city": "Dubai"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternative_phone": {
|
|
"type": "string"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"time_zone": {
|
|
"type": "string"
|
|
},
|
|
"upi_id": {
|
|
"type": "string"
|
|
},
|
|
"first_day_of_work": {
|
|
"type": "string"
|
|
},
|
|
"latitude": {
|
|
"type": "string"
|
|
},
|
|
"longitude": {
|
|
"type": "string"
|
|
},
|
|
"bank_details": {
|
|
"type": "string"
|
|
},
|
|
"first_address_line": {
|
|
"type": "string"
|
|
},
|
|
"second_address_line": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"address": {
|
|
"type": "string"
|
|
},
|
|
"logo": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"security": {
|
|
"type": "string"
|
|
},
|
|
"privacy_policy": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "My Workshop",
|
|
"email": "workshop@example.com",
|
|
"phone": "+971501234567",
|
|
"alternative_phone": "string",
|
|
"website": "string",
|
|
"time_zone": "Asia/Dubai",
|
|
"upi_id": "string",
|
|
"first_day_of_work": "monday",
|
|
"latitude": "string",
|
|
"longitude": "string",
|
|
"bank_details": "string",
|
|
"first_address_line": "string",
|
|
"second_address_line": "string",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "string",
|
|
"description": "string",
|
|
"address": "string",
|
|
"logo": "string",
|
|
"icon": "string",
|
|
"security": "string",
|
|
"privacy_policy": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Settings"
|
|
],
|
|
"summary": "Create or update application settings.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"time_zone": {
|
|
"type": "string"
|
|
},
|
|
"first_day_of_work": {
|
|
"type": "string"
|
|
},
|
|
"first_address_line": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"name": "My Workshop",
|
|
"email": "workshop@example.com",
|
|
"phone": "+971501234567",
|
|
"time_zone": "Asia/Dubai",
|
|
"first_day_of_work": "monday",
|
|
"first_address_line": "123 Main St",
|
|
"country_id": 1,
|
|
"city": "Dubai"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"type": "string"
|
|
},
|
|
"alternative_phone": {
|
|
"type": "string"
|
|
},
|
|
"website": {
|
|
"type": "string"
|
|
},
|
|
"time_zone": {
|
|
"type": "string"
|
|
},
|
|
"upi_id": {
|
|
"type": "string"
|
|
},
|
|
"first_day_of_work": {
|
|
"type": "string"
|
|
},
|
|
"latitude": {
|
|
"type": "string"
|
|
},
|
|
"longitude": {
|
|
"type": "string"
|
|
},
|
|
"bank_details": {
|
|
"type": "string"
|
|
},
|
|
"first_address_line": {
|
|
"type": "string"
|
|
},
|
|
"second_address_line": {
|
|
"type": "string"
|
|
},
|
|
"country_id": {
|
|
"type": "integer"
|
|
},
|
|
"state_id": {
|
|
"type": "integer"
|
|
},
|
|
"city": {
|
|
"type": "string"
|
|
},
|
|
"zip_code": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"address": {
|
|
"type": "string"
|
|
},
|
|
"logo": {
|
|
"type": "string"
|
|
},
|
|
"icon": {
|
|
"type": "string"
|
|
},
|
|
"security": {
|
|
"type": "string"
|
|
},
|
|
"privacy_policy": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"name": "My Workshop",
|
|
"email": "workshop@example.com",
|
|
"phone": "+971501234567",
|
|
"alternative_phone": "string",
|
|
"website": "string",
|
|
"time_zone": "Asia/Dubai",
|
|
"upi_id": "string",
|
|
"first_day_of_work": "monday",
|
|
"latitude": "string",
|
|
"longitude": "string",
|
|
"bank_details": "string",
|
|
"first_address_line": "string",
|
|
"second_address_line": "string",
|
|
"country_id": 1,
|
|
"state_id": 1,
|
|
"city": "Dubai",
|
|
"zip_code": "string",
|
|
"description": "string",
|
|
"address": "string",
|
|
"logo": "string",
|
|
"icon": "string",
|
|
"security": "string",
|
|
"privacy_policy": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/taxes": {
|
|
"get": {
|
|
"tags": [
|
|
"Taxes"
|
|
],
|
|
"summary": "Display a listing of taxes.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"title": "VAT 5%",
|
|
"note": "string",
|
|
"rate": 5,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Taxes"
|
|
],
|
|
"summary": "Store a newly created tax.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "VAT 5%",
|
|
"note": "Value Added Tax",
|
|
"rate": 5,
|
|
"is_default": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "VAT 5%",
|
|
"note": "string",
|
|
"rate": 5,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/taxes/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Taxes"
|
|
],
|
|
"summary": "Update the specified tax.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"title": "VAT 5%",
|
|
"note": "Value Added Tax",
|
|
"rate": 5,
|
|
"is_default": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "VAT 5%",
|
|
"note": "string",
|
|
"rate": 5,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Taxes"
|
|
],
|
|
"summary": "Remove the specified tax.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/set-default-tax": {
|
|
"post": {
|
|
"tags": [
|
|
"Set Default Tax"
|
|
],
|
|
"summary": "Set a tax as the default.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "VAT 5%",
|
|
"note": "string",
|
|
"rate": 5,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/remove-default-tax": {
|
|
"post": {
|
|
"tags": [
|
|
"Remove Default Tax"
|
|
],
|
|
"summary": "Remove default from a tax.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"type": "string"
|
|
},
|
|
"rate": {
|
|
"type": "integer"
|
|
},
|
|
"is_default": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"title": "VAT 5%",
|
|
"note": "string",
|
|
"rate": 5,
|
|
"is_default": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/make-and-models": {
|
|
"get": {
|
|
"tags": [
|
|
"Make And Models"
|
|
],
|
|
"summary": "Display a listing of make and model records.",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_id": {
|
|
"type": "integer"
|
|
},
|
|
"transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"links": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first": {
|
|
"type": "string"
|
|
},
|
|
"last": {
|
|
"type": "string"
|
|
},
|
|
"prev": {
|
|
"type": "string"
|
|
},
|
|
"next": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": [
|
|
{
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"body_type_id": 1,
|
|
"fuel_id": 1,
|
|
"transmission_id": 1,
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 5,
|
|
"per_page": 15,
|
|
"total": 75
|
|
},
|
|
"links": {
|
|
"first": "https://api.example.com/resource?page=1",
|
|
"last": "https://api.example.com/resource?page=5",
|
|
"prev": "string",
|
|
"next": "https://api.example.com/resource?page=2"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Make And Models"
|
|
],
|
|
"summary": "Store a newly created make and model record.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_id": {
|
|
"type": "integer"
|
|
},
|
|
"transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"body_type_id": 1,
|
|
"fuel_id": 1,
|
|
"transmission_id": 1,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_id": {
|
|
"type": "integer"
|
|
},
|
|
"transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"body_type_id": 1,
|
|
"fuel_id": 1,
|
|
"transmission_id": 1,
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/make-and-models/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Make And Models"
|
|
],
|
|
"summary": "Update the specified make and model record.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_id": {
|
|
"type": "integer"
|
|
},
|
|
"transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"body_type_id": 1,
|
|
"fuel_id": 1,
|
|
"transmission_id": 1,
|
|
"is_active": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_id": {
|
|
"type": "integer"
|
|
},
|
|
"transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"body_type_id": 1,
|
|
"fuel_id": 1,
|
|
"transmission_id": 1,
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Make And Models"
|
|
],
|
|
"summary": "Remove the specified make and model record.",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Deleted successfully."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/toggle-make-and-model-status": {
|
|
"post": {
|
|
"tags": [
|
|
"Toggle Make And Model Status"
|
|
],
|
|
"summary": "Toggle the active status of a make and model record.",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"id": 1
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"shop_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"year": {
|
|
"type": "string"
|
|
},
|
|
"sub_model": {
|
|
"type": "string"
|
|
},
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"fuel_id": {
|
|
"type": "integer"
|
|
},
|
|
"transmission_id": {
|
|
"type": "integer"
|
|
},
|
|
"engine_size": {
|
|
"type": "string"
|
|
},
|
|
"drivetrain": {
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"shop_type_id": 1,
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"year": "2022",
|
|
"sub_model": "LE",
|
|
"body_type_id": 1,
|
|
"fuel_id": 1,
|
|
"transmission_id": 1,
|
|
"engine_size": "2.5L",
|
|
"drivetrain": "FWD",
|
|
"is_active": true,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/configurations": {
|
|
"get": {
|
|
"tags": [
|
|
"Configurations"
|
|
],
|
|
"summary": "GET /api/configurations",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"sell_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"give_discounts": {
|
|
"type": "string"
|
|
},
|
|
"purchase_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"receive_discounts": {
|
|
"type": "string"
|
|
},
|
|
"enable_parts_issuing": {
|
|
"type": "boolean"
|
|
},
|
|
"enable_digital_authorisation": {
|
|
"type": "boolean"
|
|
},
|
|
"is_taxable_order": {
|
|
"type": "boolean"
|
|
},
|
|
"customer_search_by_vehicle": {
|
|
"type": "boolean"
|
|
},
|
|
"vehicle_search_by_customer": {
|
|
"type": "boolean"
|
|
},
|
|
"odometer_in_check_in": {
|
|
"type": "boolean"
|
|
},
|
|
"odometer_in_check_out": {
|
|
"type": "boolean"
|
|
},
|
|
"customer_signature_in_check_in": {
|
|
"type": "boolean"
|
|
},
|
|
"customer_signature_in_check_out": {
|
|
"type": "boolean"
|
|
},
|
|
"set_packaged_pricing": {
|
|
"type": "boolean"
|
|
},
|
|
"show_as_lump_sum": {
|
|
"type": "boolean"
|
|
},
|
|
"mark_as_recommended": {
|
|
"type": "boolean"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"data": {
|
|
"id": 1,
|
|
"sell_rates_tax_inclusive": "Tax Inclusive",
|
|
"give_discounts": "no",
|
|
"purchase_rates_tax_inclusive": "Tax Inclusive",
|
|
"receive_discounts": "no",
|
|
"enable_parts_issuing": false,
|
|
"enable_digital_authorisation": false,
|
|
"is_taxable_order": true,
|
|
"customer_search_by_vehicle": false,
|
|
"vehicle_search_by_customer": false,
|
|
"odometer_in_check_in": false,
|
|
"odometer_in_check_out": false,
|
|
"customer_signature_in_check_in": false,
|
|
"customer_signature_in_check_out": false,
|
|
"set_packaged_pricing": false,
|
|
"show_as_lump_sum": false,
|
|
"mark_as_recommended": false,
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/configurations/sales_tax_discount": {
|
|
"put": {
|
|
"tags": [
|
|
"Configurations"
|
|
],
|
|
"summary": "PUT /api/configurations/sales_tax_discount",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sell_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"give_discounts": {
|
|
"type": "string"
|
|
},
|
|
"purchase_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"receive_discounts": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"sell_rates_tax_inclusive": "Tax Inclusive",
|
|
"give_discounts": "no",
|
|
"purchase_rates_tax_inclusive": "Tax Inclusive",
|
|
"receive_discounts": "no"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"sell_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"give_discounts": {
|
|
"type": "string"
|
|
},
|
|
"purchase_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"receive_discounts": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"sell_rates_tax_inclusive": "Tax Inclusive",
|
|
"give_discounts": "no",
|
|
"purchase_rates_tax_inclusive": "Tax Inclusive",
|
|
"receive_discounts": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/configurations/purchase_tax_discount": {
|
|
"put": {
|
|
"tags": [
|
|
"Configurations"
|
|
],
|
|
"summary": "PUT /api/configurations/purchase_tax_discount",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sell_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"give_discounts": {
|
|
"type": "string"
|
|
},
|
|
"purchase_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"receive_discounts": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"sell_rates_tax_inclusive": "Tax Inclusive",
|
|
"give_discounts": "no",
|
|
"purchase_rates_tax_inclusive": "Tax Inclusive",
|
|
"receive_discounts": "no"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"sell_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"give_discounts": {
|
|
"type": "string"
|
|
},
|
|
"purchase_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"receive_discounts": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"sell_rates_tax_inclusive": "Tax Inclusive",
|
|
"give_discounts": "no",
|
|
"purchase_rates_tax_inclusive": "Tax Inclusive",
|
|
"receive_discounts": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/configurations/general_preferences": {
|
|
"put": {
|
|
"tags": [
|
|
"Configurations"
|
|
],
|
|
"summary": "PUT /api/configurations/general_preferences",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"sell_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"give_discounts": {
|
|
"type": "string"
|
|
},
|
|
"purchase_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"receive_discounts": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"sell_rates_tax_inclusive": "Tax Inclusive",
|
|
"give_discounts": "no",
|
|
"purchase_rates_tax_inclusive": "Tax Inclusive",
|
|
"receive_discounts": "no"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"sell_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"give_discounts": {
|
|
"type": "string"
|
|
},
|
|
"purchase_rates_tax_inclusive": {
|
|
"type": "string"
|
|
},
|
|
"receive_discounts": {
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"message": "Operation completed successfully.",
|
|
"data": {
|
|
"id": 1,
|
|
"sell_rates_tax_inclusive": "Tax Inclusive",
|
|
"give_discounts": "no",
|
|
"purchase_rates_tax_inclusive": "Tax Inclusive",
|
|
"receive_discounts": "no",
|
|
"created_at": "2026-03-31T10:00:00.000000Z",
|
|
"updated_at": "2026-03-31T10:00:00.000000Z"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/home": {
|
|
"get": {
|
|
"tags": [
|
|
"Home"
|
|
],
|
|
"summary": "GET /api/home",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"filters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"period": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string"
|
|
},
|
|
"end_date": {
|
|
"type": "string"
|
|
},
|
|
"available_periods": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"financial_filters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"period": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string"
|
|
},
|
|
"end_date": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"work_orders_filters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"period": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string"
|
|
},
|
|
"end_date": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"appointments_filters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"period": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string"
|
|
},
|
|
"end_date": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"sales_filters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"period": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string"
|
|
},
|
|
"end_date": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"purchase_filters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"period": {
|
|
"type": "string"
|
|
},
|
|
"start_date": {
|
|
"type": "string"
|
|
},
|
|
"end_date": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"chart": {
|
|
"type": "object",
|
|
"properties": {
|
|
"currency": {
|
|
"type": "string"
|
|
},
|
|
"series": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"income": {
|
|
"type": "integer"
|
|
},
|
|
"expense": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"totals": {
|
|
"type": "object",
|
|
"properties": {
|
|
"currency": {
|
|
"type": "string"
|
|
},
|
|
"income": {
|
|
"type": "integer"
|
|
},
|
|
"expense": {
|
|
"type": "integer"
|
|
},
|
|
"total_income_text": {
|
|
"type": "string"
|
|
},
|
|
"total_expense_text": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"financial_summary": {
|
|
"type": "object",
|
|
"properties": {
|
|
"currency": {
|
|
"type": "string"
|
|
},
|
|
"chart": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"label": {
|
|
"type": "string"
|
|
},
|
|
"count": {
|
|
"type": "integer"
|
|
},
|
|
"amount": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"cards": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"label": {
|
|
"type": "string"
|
|
},
|
|
"amount": {
|
|
"type": "integer"
|
|
},
|
|
"amount_text": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"work_orders": {
|
|
"type": "object",
|
|
"properties": {
|
|
"status_cards": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"label": {
|
|
"type": "string"
|
|
},
|
|
"count": {
|
|
"type": "integer"
|
|
},
|
|
"orders_text": {
|
|
"type": "string"
|
|
},
|
|
"amount": {
|
|
"type": "integer"
|
|
},
|
|
"amount_text": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"chart": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"orders": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"appointments": {
|
|
"type": "object",
|
|
"properties": {
|
|
"completed": {
|
|
"type": "integer"
|
|
},
|
|
"no_show": {
|
|
"type": "integer"
|
|
},
|
|
"cancelled": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"no_show_rate": {
|
|
"type": "integer"
|
|
},
|
|
"chart": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"appointments": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"upcoming_appointments": {
|
|
"type": "object",
|
|
"properties": {
|
|
"counts": {
|
|
"type": "object",
|
|
"properties": {
|
|
"today": {
|
|
"type": "integer"
|
|
},
|
|
"tomorrow": {
|
|
"type": "integer"
|
|
},
|
|
"this_week": {
|
|
"type": "integer"
|
|
},
|
|
"next_week": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"details": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"date": {
|
|
"type": "string"
|
|
},
|
|
"from_time": {
|
|
"type": "string"
|
|
},
|
|
"to_time": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"meta": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"last_page": {
|
|
"type": "integer"
|
|
},
|
|
"per_page": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"inventory": {
|
|
"type": "object",
|
|
"properties": {
|
|
"parts_count": {
|
|
"type": "integer"
|
|
},
|
|
"services_count": {
|
|
"type": "integer"
|
|
},
|
|
"service_groups_count": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"customers": {
|
|
"type": "object",
|
|
"properties": {
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"individuals": {
|
|
"type": "integer"
|
|
},
|
|
"companies": {
|
|
"type": "integer"
|
|
},
|
|
"fleets": {
|
|
"type": "integer"
|
|
},
|
|
"insurers": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"vehicles_by_body_type": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"body_type_id": {
|
|
"type": "integer"
|
|
},
|
|
"body_type": {
|
|
"type": "string"
|
|
},
|
|
"vehicles_count": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"vehicles_by_make": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"vehicles_count": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"vehicles_by_make_model": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"make": {
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"type": "string"
|
|
},
|
|
"vehicles_count": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"sales": {
|
|
"type": "object",
|
|
"properties": {
|
|
"inspections": {
|
|
"type": "integer"
|
|
},
|
|
"estimates": {
|
|
"type": "integer"
|
|
},
|
|
"invoices": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"purchases": {
|
|
"type": "object",
|
|
"properties": {
|
|
"purchase_orders": {
|
|
"type": "integer"
|
|
},
|
|
"bills": {
|
|
"type": "integer"
|
|
},
|
|
"expenses": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"filters": {
|
|
"period": "this_month",
|
|
"start_date": "2026-03-01",
|
|
"end_date": "2026-03-31",
|
|
"available_periods": [
|
|
"today",
|
|
"yesterday",
|
|
"this_week",
|
|
"this_month",
|
|
"last_month",
|
|
"last_3_months",
|
|
"last_6_months",
|
|
"last_year",
|
|
"year_to_date",
|
|
"all_time",
|
|
"custom"
|
|
]
|
|
},
|
|
"financial_filters": {
|
|
"period": "this_month",
|
|
"start_date": "2026-03-01",
|
|
"end_date": "2026-03-31"
|
|
},
|
|
"work_orders_filters": {
|
|
"period": "this_month",
|
|
"start_date": "2026-03-01",
|
|
"end_date": "2026-03-31"
|
|
},
|
|
"appointments_filters": {
|
|
"period": "this_month",
|
|
"start_date": "2026-03-01",
|
|
"end_date": "2026-03-31"
|
|
},
|
|
"sales_filters": {
|
|
"period": "this_month",
|
|
"start_date": "2026-03-01",
|
|
"end_date": "2026-03-31"
|
|
},
|
|
"purchase_filters": {
|
|
"period": "this_month",
|
|
"start_date": "2026-03-01",
|
|
"end_date": "2026-03-31"
|
|
},
|
|
"chart": {
|
|
"currency": "AED",
|
|
"series": [
|
|
{
|
|
"date": "2026-03-01",
|
|
"income": 1200,
|
|
"expense": 450
|
|
},
|
|
{
|
|
"date": "2026-03-15",
|
|
"income": 3500,
|
|
"expense": 1100
|
|
},
|
|
{
|
|
"date": "2026-03-31",
|
|
"income": 2800,
|
|
"expense": 900
|
|
}
|
|
]
|
|
},
|
|
"totals": {
|
|
"currency": "AED",
|
|
"income": 7500,
|
|
"expense": 2450,
|
|
"total_income_text": "AED 7,500.00",
|
|
"total_expense_text": "AED 2,450.00"
|
|
},
|
|
"financial_summary": {
|
|
"currency": "AED",
|
|
"chart": [
|
|
{
|
|
"label": "Invoices",
|
|
"count": 12,
|
|
"amount": 15000
|
|
},
|
|
{
|
|
"label": "Expenses",
|
|
"count": 5,
|
|
"amount": 2450
|
|
},
|
|
{
|
|
"label": "Bills",
|
|
"count": 8,
|
|
"amount": 6300
|
|
}
|
|
],
|
|
"cards": [
|
|
{
|
|
"label": "Total Invoiced",
|
|
"amount": 15000,
|
|
"amount_text": "AED 15,000.00"
|
|
},
|
|
{
|
|
"label": "Total Expenses",
|
|
"amount": 2450,
|
|
"amount_text": "AED 2,450.00"
|
|
},
|
|
{
|
|
"label": "Total Bills",
|
|
"amount": 6300,
|
|
"amount_text": "AED 6,300.00"
|
|
}
|
|
]
|
|
},
|
|
"work_orders": {
|
|
"status_cards": [
|
|
{
|
|
"status": "draft",
|
|
"label": "Draft",
|
|
"count": 2,
|
|
"orders_text": "2 Orders",
|
|
"amount": 0,
|
|
"amount_text": "AED 0.00"
|
|
},
|
|
{
|
|
"status": "check_in",
|
|
"label": "Check In",
|
|
"count": 5,
|
|
"orders_text": "5 Orders",
|
|
"amount": 0,
|
|
"amount_text": "AED 0.00"
|
|
},
|
|
{
|
|
"status": "in_progress",
|
|
"label": "In Progress",
|
|
"count": 8,
|
|
"orders_text": "8 Orders",
|
|
"amount": 0,
|
|
"amount_text": "AED 0.00"
|
|
},
|
|
{
|
|
"status": "on_hold",
|
|
"label": "On Hold",
|
|
"count": 1,
|
|
"orders_text": "1 Orders",
|
|
"amount": 0,
|
|
"amount_text": "AED 0.00"
|
|
},
|
|
{
|
|
"status": "ready_to_delivery",
|
|
"label": "Ready to Deliver",
|
|
"count": 3,
|
|
"orders_text": "3 Orders",
|
|
"amount": 0,
|
|
"amount_text": "AED 0.00"
|
|
},
|
|
{
|
|
"status": "delivered",
|
|
"label": "Delivered",
|
|
"count": 7,
|
|
"orders_text": "7 Orders",
|
|
"amount": 0,
|
|
"amount_text": "AED 0.00"
|
|
}
|
|
],
|
|
"total": 26,
|
|
"chart": [
|
|
{
|
|
"date": "2026-03-01",
|
|
"orders": 3
|
|
},
|
|
{
|
|
"date": "2026-03-15",
|
|
"orders": 8
|
|
},
|
|
{
|
|
"date": "2026-03-31",
|
|
"orders": 5
|
|
}
|
|
]
|
|
},
|
|
"appointments": {
|
|
"completed": 10,
|
|
"no_show": 2,
|
|
"cancelled": 1,
|
|
"total": 20,
|
|
"no_show_rate": 10,
|
|
"chart": [
|
|
{
|
|
"date": "2026-03-01",
|
|
"appointments": 2
|
|
},
|
|
{
|
|
"date": "2026-03-15",
|
|
"appointments": 5
|
|
},
|
|
{
|
|
"date": "2026-03-31",
|
|
"appointments": 3
|
|
}
|
|
]
|
|
},
|
|
"upcoming_appointments": {
|
|
"counts": {
|
|
"today": 3,
|
|
"tomorrow": 2,
|
|
"this_week": 8,
|
|
"next_week": 5
|
|
},
|
|
"details": [
|
|
{
|
|
"id": 1,
|
|
"title": "Oil Change",
|
|
"date": "2026-03-31",
|
|
"from_time": "09:00",
|
|
"to_time": "10:00",
|
|
"status": "confirmed"
|
|
}
|
|
],
|
|
"meta": {
|
|
"current_page": 1,
|
|
"last_page": 1,
|
|
"per_page": 10,
|
|
"total": 3
|
|
}
|
|
},
|
|
"inventory": {
|
|
"parts_count": 150,
|
|
"services_count": 45,
|
|
"service_groups_count": 12
|
|
},
|
|
"customers": {
|
|
"total": 320,
|
|
"individuals": 180,
|
|
"companies": 90,
|
|
"fleets": 30,
|
|
"insurers": 20
|
|
},
|
|
"vehicles_by_body_type": [
|
|
{
|
|
"body_type_id": 1,
|
|
"body_type": "Sedan",
|
|
"vehicles_count": 85
|
|
},
|
|
{
|
|
"body_type_id": 2,
|
|
"body_type": "SUV",
|
|
"vehicles_count": 120
|
|
}
|
|
],
|
|
"vehicles_by_make": [
|
|
{
|
|
"make": "Toyota",
|
|
"vehicles_count": 95
|
|
},
|
|
{
|
|
"make": "Nissan",
|
|
"vehicles_count": 60
|
|
}
|
|
],
|
|
"vehicles_by_make_model": [
|
|
{
|
|
"make": "Toyota",
|
|
"model": "Camry",
|
|
"vehicles_count": 45
|
|
},
|
|
{
|
|
"make": "Toyota",
|
|
"model": "Land Cruiser",
|
|
"vehicles_count": 50
|
|
}
|
|
],
|
|
"sales": {
|
|
"inspections": 8,
|
|
"estimates": 15,
|
|
"invoices": 12
|
|
},
|
|
"purchases": {
|
|
"purchase_orders": 6,
|
|
"bills": 8,
|
|
"expenses": 5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/document-print": {
|
|
"get": {
|
|
"tags": [
|
|
"Document print / download"
|
|
],
|
|
"summary": "GET /api/document-print",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Document print / download"
|
|
],
|
|
"summary": "POST /api/document-print",
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"mode": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"example": {
|
|
"type": "job_card",
|
|
"id": 1,
|
|
"mode": "print"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |