![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/rentpix.corals.io/storage/api-docs/ |
{ "openapi": "3.0.0", "info": { "title": "Rental 360 Api Documentation", "version": "1.0.0" }, "paths": { "/api/v1/auth/login": { "post": { "tags": [ "Authentication" ], "summary": "Login", "operationId": "5686d050fecd6ff7bb4ac803a90e84d8", "requestBody": { "description": "To login, you have to send email and password. See Example!", "required": true, "content": { "application/json": { "schema": { "required": [ "email", "password" ], "properties": { "email": { "type": "string", "example": "[email protected]" }, "password": { "type": "string", "example": "123456" } }, "type": "object" } } } }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "" }, "data": { "type": "object", "example": { "id": "2", "full_name": "Corals Member", "name": "Corals", "last_name": "Member", "email": "[email protected]", "confirmed": true, "roles": { "name": "member", "label": "Member" }, "job_title": "Ads Coordinator", "picture": "http://rental360-api.test/assets/corals/images/avatars/avatar_2.png", "picture_thumb": "http://rental360-api.test/assets/corals/images/avatars/avatar_2.png", "about": "-", "phone_country_code": "-", "phone_number": "-", "address": "-", "integration_id": "-", "gateway": "-", "card_brand": "-", "card_last_four": "-", "payment_method_token": "-", "created_at": "10 Nov, 2022", "updated_at": "10 Nov, 2022", "authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIzIiwianRpIjoiZjI0ZDc2ZmU5NDQwNWJjNjgwYmJmNGIyOTAyMzFlM2I3ODYyMWI3N2RkZTE2ZDZmN2JhZWM0OWIzYzQ3OWFhN2VkNGYyZmJmYmRjYzBhMzIiLCJpYXQiOjE2NjgzMjM3NzEuNTg4Nzg4LCJuYmYiOjE2NjgzMjM3NzEuNTg4NzkxLCJleHAiOjE2OTk4NTk3NzEuNTUzNDE2LCJzdWIiOiIyIiwic2NvcGVzIjpbXX0.GJwrQnm8YLTiXrzpGcd0e9Vli3NMWK2-PVUO5O_QJAMmgRwSnvQU-GQvnyuWLSCL7iSimvFAXMzIohrkz6F1y_YN2gC8GLHEITg2yjSGZPHg9m5S9O8BSgf9x7hsqHAK2KYAVkvLUfyBcxBnNlkacdg3spUntY_GWEqsevCKw6MnsF9s4Q1rzeOgC_0FCnTZ7Ee9HOgIhzocft4Gd_M3ZVPslnA8DMIgUE119VbmOzMpErUKTeSlHkCFgari6tEA6lOxc2x62VHd_6UdaYSteZ-hlDnkg769eanRS_pV8TkFI4SSNZ37mBfYuH6l0UVVetFDZi3ps52je0Mg2z3bueRfa3AFENIi-Ik2pjQtKV_OpeL-yWbOIOdX9a3As8JQHKDrPefxG5KsgixGjoHOAc_kHTYVkGv-EOhyhLs7spWKgaylXRiZidXVYOczi8Q95yrlA2Ar2BcybvIbtx8T6lOp-7tte5NOTP0eCaLhcMmgWIdOQq2amSFHi-XfgtwxCLC1Pdb18HJZHT735WxhgYXyS1M1sHJsFfBbMw8YBm-xFqxDeUXm-PyqYrOs2uYibPeC4kFCWZtW2ljJMbcTi9_Dfgdeq22BQ_57yRhqKNC4AOg2o3JiRgz_YR6wBmgyRzoukmnwwAd7CUuQ2HUW7GvI8Imopjyorsl3yGJha2E", "expires_at": "2023-11-13 07:16:11" } } }, "type": "object" } } } }, "422": { "description": "The given data was invalid.", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "The given data was invalid" }, "error": { "type": "object", "example": { "email": "These credentials do not match our records" } } }, "type": "object" } } } } } } }, "/api/v1/profile": { "get": { "tags": [ "Authentication" ], "summary": "User Profile", "description": "You can get the details of user who login by this link", "operationId": "99e1626314088e2f845d893178d5faba", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "" }, "data": { "type": "object", "example": { "id": "2", "full_name": "Corals Member", "name": "Corals", "last_name": "Member", "email": "[email protected]", "confirmed": true, "roles": { "name": "member", "label": "Member" }, "job_title": "Ads Coordinator", "picture": "http://rental360-api.test/assets/corals/images/avatars/avatar_2.png", "picture_thumb": "http://rental360-api.test/assets/corals/images/avatars/avatar_2.png", "about": "-", "phone_country_code": "-", "phone_number": "-", "address": "-", "integration_id": "-", "gateway": "-", "card_brand": "-", "card_last_four": "-", "payment_method_token": "-", "created_at": "10 Nov, 2022", "updated_at": "10 Nov, 2022", "authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIzIiwianRpIjoiZjI0ZDc2ZmU5NDQwNWJjNjgwYmJmNGIyOTAyMzFlM2I3ODYyMWI3N2RkZTE2ZDZmN2JhZWM0OWIzYzQ3OWFhN2VkNGYyZmJmYmRjYzBhMzIiLCJpYXQiOjE2NjgzMjM3NzEuNTg4Nzg4LCJuYmYiOjE2NjgzMjM3NzEuNTg4NzkxLCJleHAiOjE2OTk4NTk3NzEuNTUzNDE2LCJzdWIiOiIyIiwic2NvcGVzIjpbXX0.GJwrQnm8YLTiXrzpGcd0e9Vli3NMWK2-PVUO5O_QJAMmgRwSnvQU-GQvnyuWLSCL7iSimvFAXMzIohrkz6F1y_YN2gC8GLHEITg2yjSGZPHg9m5S9O8BSgf9x7hsqHAK2KYAVkvLUfyBcxBnNlkacdg3spUntY_GWEqsevCKw6MnsF9s4Q1rzeOgC_0FCnTZ7Ee9HOgIhzocft4Gd_M3ZVPslnA8DMIgUE119VbmOzMpErUKTeSlHkCFgari6tEA6lOxc2x62VHd_6UdaYSteZ-hlDnkg769eanRS_pV8TkFI4SSNZ37mBfYuH6l0UVVetFDZi3ps52je0Mg2z3bueRfa3AFENIi-Ik2pjQtKV_OpeL-yWbOIOdX9a3As8JQHKDrPefxG5KsgixGjoHOAc_kHTYVkGv-EOhyhLs7spWKgaylXRiZidXVYOczi8Q95yrlA2Ar2BcybvIbtx8T6lOp-7tte5NOTP0eCaLhcMmgWIdOQq2amSFHi-XfgtwxCLC1Pdb18HJZHT735WxhgYXyS1M1sHJsFfBbMw8YBm-xFqxDeUXm-PyqYrOs2uYibPeC4kFCWZtW2ljJMbcTi9_Dfgdeq22BQ_57yRhqKNC4AOg2o3JiRgz_YR6wBmgyRzoukmnwwAd7CUuQ2HUW7GvI8Imopjyorsl3yGJha2E", "expires_at": "2023-11-13 07:16:11" } } }, "type": "object" } } } }, "401": { "description": "Unauthenticated", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "Unauthenticated." } }, "type": "object" } } } } } } }, "/api/v1/rentpix/login": { "post": { "tags": [ "Authentication" ], "summary": "Login By api_token", "operationId": "f836cb038d67b2587a87d32c8c4fb9af", "requestBody": { "description": "Login by api_token that will send to 3rd part and return the response have a user detail if api_token true.", "required": true, "content": { "application/json": { "schema": { "required": [ "api_token" ], "properties": { "api_token": { "type": "string", "example": "eyJ0eXAiOiJKxxxxxxxxx" } }, "type": "object" } } } }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "" }, "data": { "type": "object", "example": { "id": "3", "full_name": "New Member", "name": "New", "last_name": "Member", "email": "[email protected]", "confirmed": false, "roles": [], "job_title": "-", "picture": "http://rental360-api.test/assets/corals/images/avatars/avatar_3.png", "picture_thumb": "http://rental360-api.test/assets/corals/images/avatars/avatar_3.png", "about": "-", "phone_country_code": "-", "phone_number": "0595000000", "address": "-", "integration_id": "-", "gateway": "-", "card_brand": "-", "card_last_four": "-", "payment_method_token": "-", "created_at": "22 Nov, 2022", "updated_at": "22 Nov, 2022", "authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIxIiwianRpIjoiYjViZmMyZDE3OTQ2MDI1NzA1MGJmYTJmOTU5OGQxMDU2Yzk4ZjU4ZWQ2YTliNmUwNDQ0NmQ2YjMwNWY3OTIzY2EwNjFhNmExNjVkMjExZTIiLCJpYXQiOjE2NjkwOTgwOTUuOTc3MzY1LCJuYmYiOjE2NjkwOTgwOTUuOTc3MzY5LCJleHAiOjE3MDA2MzQwOTUuOTM5MTMsInN1YiI6IjMiLCJzY29wZXMiOltdfQ.EIQFTab9ww5vs_Q9VU2wqQlLC058L2uHKXgHOtjm0hzrz-EHslYx32i7f3R0e39hqDPSgtLtq90F2JF4vBlZFdSfLvXiizZ7NBioi2vAeAITF5grb1M-xZxXkfKTumCxl_3teB9OLPW-gmqnLxXX66zKBEAbCk5K9zt3m_xwO7Ik95jMt01Ixz1H3HCiey544KdvEjWy1DRQtGic2pZSYDAmZVbuJV7HPi7XEC_YSgAqoe2AMNk1gPGtFenj4ZO5h-DwsE35N7bk0fQAwuDU9T4PZOTtp8loQ6mDXVseO1biv-4sTAXWIQjbaMybnF-5By6F8uV7z51fz3Zdxy4wx5BBpA1-83zA2IGIPPV75heuCqEjTXTteJaT5ZylpuoR2LQKikXSOmVzJfPW-_PDhGV_VaUSVafCCpg7Y4LAoMJO5RSvtOyprSLo9u5A9xK0WzBzXRSs-MhB-k5-dedBk-8krX2U5dRVt5UNWrrROBLgNPwqxiGcdQ59SPfL2fFabjBMoTbt5PCk6KjHltjzHYXeaLNfVoc2TRSSMopvFdUhhl8GGBZoaxRZsWH7XIjMbe9Nzzsr3zoPUiA30AFDan30VqX1UOzLvrbDIDerRiRUHhkqoASRzoGYrb78zTwQgADXTylVD0kUdM3ZFveQcUrkSo7QM3kqpZitl2qs-E0", "expires_at": "2023-11-22 06:21:35" } } }, "type": "object" } } } }, "422": { "description": "The given data was invalid.", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "The api token field is required." }, "error": { "type": "object", "example": { "api_token": "The api token field is required." } } }, "type": "object" } } } } } } }, "/api/v1/inspections/get-presigned-url": { "get": { "tags": [ "Inspection" ], "summary": "Get Pre Signed URL For Inspection", "operationId": "0960bfb1fbbe515d9778793847333458", "requestBody": { "description": "To Submit inspection, you need to send drivers array (have at least 1 driver record). You can also send array of images, and you can identify the driver who uploaded the image by add the license to image details.", "required": true, "content": { "application/json": { "schema": { "required": [ "seq", "timestamp", "file_name" ], "properties": { "seq": { "type": "integer", "example": "1" }, "timestamp": { "type": "string", "example": "1673187718000" }, "file_name": { "type": "string", "example": "filename.jpg" } }, "type": "object" } } } }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "" }, "data": { "type": "object", "example": { "presigned_url": "https://rentpix.s3.amazonaws.com/inspections/1673187718000/7/filename.jpg?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAYR7C5CUOEDC4MTUI%2F20230117%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230117T113639Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=12790c1f6083e797eb03bd290de71364adc9ffde9ee4b7972295ab32931ddfca", "root": "inspections/1673187718000/7/filename.jpg" } } }, "type": "object" } } } }, "422": { "description": "The given data was invalid.", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "The file name field is required." }, "error": { "type": "object", "example": { "file_name": "The file name field is required." } } }, "type": "object" } } } } } } }, "/api/v1/inspections/{inspection}/upload-images": { "post": { "tags": [ "Inspection" ], "summary": "Upload images For Inspection", "operationId": "e3dbc5ea807cabfdd28ab4c999ba34b6", "parameters": [ { "name": "inspection", "in": "path", "description": "inspection id", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "description": "Need to send images array have at least one image, the file_name, mime_type, collection are required, you can also send the license of driver, see example", "required": true, "content": { "application/json": { "schema": { "properties": { "images": { "type": "object", "example": [ { "file_name": "filename.jpg", "mime_type": "jpg", "description": "image", "damage_tags": [], "collection": "roof_front", "uuid": "a58656c9-2d13-4249-b3ec-29a5635716pl", "root": "" }, { "license": "D1234567SS", "file_name": "filename2.jpg", "mime_type": "jpg", "collection": "34_ds_frontside", "uuid": "a58656c9-2d13-4249-b3ec-29a5635710ce", "root": "" } ] } }, "type": "object" } } } }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "Images has been added successfully." }, "data": { "type": "object", "example": [] } }, "type": "object" } } } }, "422": { "description": "The given data was invalid.", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "The images field is required." }, "error": { "type": "object", "example": { "images.*.file_name": "The images.*.file_name field is required.", "images.*.mime_type": "The images.*.mime_type field is required.", "images.*.collection": "The images.*.collection field is required." } } }, "type": "object" } } } } } } }, "/api/v1/inspections/{inspection}/upload-single-image": { "post": { "tags": [ "Inspection" ], "summary": "Upload Single image For Inspection", "operationId": "e3dbc5ea807cabfdd28ab4c999ba34b7", "parameters": [ { "name": "inspection", "in": "path", "description": "inspection id", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "description": "Need to send single image, the file_name, mime_type, collection are required, you can also send the license of driver, see example", "required": true, "content": { "application/json": { "schema": { "properties": { "license": { "type": "string", "example": "D1234567SS" }, "file_name": { "type": "string", "example": "filename.jpg" }, "mime_type": { "type": "string", "example": "jpg" }, "description": { "type": "string", "example": "image" }, "damage_tags": { "type": "string", "example": [] }, "collection": { "type": "string", "example": "roof_front" } }, "type": "object" } } } }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "Image has been added successfully." }, "data": { "type": "object", "example": [] } }, "type": "object" } } } }, "422": { "description": "The given data was invalid.", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "The collection field is required." }, "error": { "type": "object", "example": { "file_name": "The file_name field is required.", "mime_type": "The mime_type field is required." } } }, "type": "object" } } } } } } }, "/api/v1/inspections/delete-single-image/{imageUUID}": { "delete": { "tags": [ "Inspection" ], "summary": "Delete Single image For Inspection", "operationId": "e3dbc5ea807cabfdd28ab4c999ba34b8", "parameters": [ { "name": "image Id", "in": "path", "description": "image id", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "Image has been deleted successfully." }, "data": { "type": "object", "example": [] } }, "type": "object" } } } } } } }, "/api/v1/inspect": { "post": { "tags": [ "Inspection" ], "summary": "Add Inspection For Reservation", "operationId": "1d5fcb329ab3276da6d2bae4d57bdd7c", "requestBody": { "description": "Send a required (integration_id, type) data to create inspection. If type start, end is duplicate for the same reservation, the inspection type will change to update.", "required": true, "content": { "application/json": { "schema": { "required": [ "integration_id", "type" ], "properties": { "integration_id": { "type": "string", "example": "res001" }, "type": { "type": "string", "example": "start" } }, "type": "object" } } } }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "" }, "data": { "type": "object", "example": { "public_link": "http://rental360-api.test/inspection-details/RG7KyNp5PZ?signature=1f687cefa504f9e9c871b2ec4cd4c6dab8d12abdd52c956ebf356b771a3d143a", "id": "1", "code": "res001-start-Larson, Jerde and Harris", "type": "start", "status": "open", "inspected_at": "13 Nov, 2022", "reservation": { "code": "res001", "type": "rental", "rental_status": "active", "start_location": { "id": 18, "code": "L-018", "name": "Jerrold" }, "end_location": { "id": 27, "code": "L-027", "name": "Allan" }, "starts_at": "28 Oct, 2022", "ends_at": "22 Nov, 2022", "unit": { "code": "U-000767", "vin": "lANSXw7doq8U", "license": "tyieZ0SL", "engin": "diesel", "make": "Schneider, Schumm and Turcotte", "model": "BG", "model_year": "2018", "status": "active" }, "customer": { "type": "personal", "name": "Larson, Jerde and Harris", "first_name": "Cesar", "last_name": "Wisozk", "address": "13995 Lindsey Garden Apt. 459\\nSouth Janetbury, MS 15275-6361", "city": "New Ted", "state": "Mississippi", "zip": "85829-8118", "phone": "+18068603215", "email": "[email protected]" } }, "drivers": [], "images": [], "timestamp": 1673187718000 } } }, "type": "object" } } } }, "422": { "description": "The given data was invalid.", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "The integration id field is required. (and 1 more error)" }, "error": { "type": "object", "example": { "integration_id": "The integration id field is required.", "type": "The type field is required." } } }, "type": "object" } } } } } } }, "/api/v1/inspection-data": { "get": { "tags": [ "Inspection" ], "summary": "Get Inspection Photos Date List", "operationId": "b3f6aedbdffab71ab88b5f30991350cf", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "" }, "data": { "type": "object", "example": { "prompted_photos": [ { "key": "34_ds_frontside", "value": "3/4 DS Front/Side", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/34_ds_frontside.HEIC", "sample_link_thumb": "http://rental360-api.test/uploads/sample_images/34_ds_frontside_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "roof_front", "value": "Roof Front", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/roof_front.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/roof_front_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "34_ps_frontside", "value": "3/4 PS Front/Side", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/34_ps_frontside.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/34_ps_frontside_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "34_ps_rearside", "value": "3/4 PS Rear/Side", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/34_ps_rearside.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/34_ps_rearside_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "34_ds_rearside", "value": "3/4 DS Rear/Side", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/34_ds_rearside.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/34_ds_rearside_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "ds_rear_roof", "value": "DS Rear Roof", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/ds_rear_roof.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/ds_rear_roof_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "ps_rear_roof", "value": "PS Rear Roof", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/ps_rear_roof.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/ps_rear_roof_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "odometer_reading", "value": "Odometer Reading", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/odometer_reading.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/odometer_reading_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "passenger_section", "value": "Passenger Section", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/passenger_section.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/passenger_section_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "rear_interior", "value": "Rear Interior", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/rear_interior.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/rear_interior_thumb.HEIC", "damage_circle_enabled": 1 }, { "key": "windshield", "value": "Windshield", "is_required": 1, "sample_link": "http://rental360-api.test/uploads/sample_images/windshield.HEIC", "sample_link_thumb":"http://rental360-api.test/uploads/sample_images/windshield_thumb.HEIC", "damage_circle_enabled": 1 } ], "driver_document_photos": [ { "key": "driver_license", "value": "Driver License", "is_required": 1 }, { "key": "insurance", "value": "Insurance", "is_required": 1 }, { "key": "credit_card", "value": "Credit Card", "is_required": 1 }, { "key": "other", "value": "Other", "is_required": 0 } ], "damage_size": [ { "key": "light", "value": "Light" }, { "key": "small", "value": "Small" }, { "key": "medium", "value": "Medium" }, { "key": "large", "value": "Large" }, { "key": "size_severe", "value": "Severe" } ], "damage_type": [ { "key": "chip", "value": "Chip" }, { "key": "crack", "value": "Crack" }, { "key": "damaged", "value": "Damaged" }, { "key": "scratch", "value": "Scratch" }, { "key": "worn", "value": "Worn" }, { "key": "dent", "value": "Dent" }, { "key": "disabled", "value": "Disabled" }, { "key": "flat", "value": "Flat" }, { "key": "not_working", "value": "Not Working" }, { "key": "broken", "value": "Broken" }, { "key": "missing", "value": "Missing" }, { "key": "severe", "value": "Severe" } ] } } }, "type": "object" } } } } } } }, "/api/v1/inspections/{inspection}/update-create-driver": { "post": { "tags": [ "Inspection" ], "description": "Update Or Create For Driver", "operationId": "1953df6980d8e731a16fd52e8c9f0a82", "parameters": [ { "name": "inspection", "in": "path", "description": "inspection id", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "description": "Example Driver Details, the required feilds is (name, phone, address, license, license_expiration_date). If phone number is exists before, the driver recorde will update. You can send dob, email, is_primary for more details.", "required": true, "content": { "application/json": { "schema": { "required": [ "name", "phone", "address", "license", "license_expiration_date" ], "properties": { "name": { "type": "string", "example": "joe" }, "dob": { "type": "string", "example": "1995-5-2" }, "email": { "type": "string", "example": "[email protected]" }, "phone": { "type": "string", "example": "01223456789" }, "address": { "type": "string", "example": "ramallah" }, "license": { "type": "string", "example": "D1234567SS" }, "license_expiration_date": { "type": "string", "example": "2022-11-10" }, "is_primary": { "type": "integer", "example": "0" } }, "type": "object" } } } }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "" }, "data": { "type": "object", "example": { "id": "1", "name": "joe", "dob": "1995-5-2", "email": "[email protected]", "phone": "01223456789", "address": "ramallah", "license": "D1234567SS", "license_expiration_date": "2022-11-10" } } }, "type": "object" } } } }, "422": { "description": "The given data was invalid.", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "The name field is required. (and 4 more errors)" }, "error": { "type": "object", "example": { "name": "The name field is required.", "phone": "The phone field is required.", "address": "The address field is required.", "license": "The license field is required.", "license_expiration_date": "The license_expiration_date field is required." } } }, "type": "object" } } } } } } }, "/api/v1/inspections/submit": { "post": { "tags": [ "Inspection" ], "summary": "Submit Inspection", "operationId": "11ec1bb47486e56d7e0221e1306640ba", "requestBody": { "description": "To Submit inspection, you need to send drivers array (have at least 1 driver record). You can also send array of images, and you can identify the driver who uploaded the image by add the license to image details.", "required": true, "content": { "Inspection exists": { "schema": { "required": [ "drivers", "name", "email", "phone", "address", "license", "license_expiration_date", "status" ], "properties": { "drivers": { "type": "array", "items": { "properties": { "name": { "type": "string", "example": "joe" }, "dob": { "type": "string", "example": "1995-5-2" }, "email": { "type": "string", "example": "[email protected]" }, "phone": { "type": "string", "example": "01223456789" }, "address": { "type": "string", "example": "ramallah" }, "license": { "type": "string", "example": "D1234567SS" }, "license_expiration_date": { "type": "string", "example": "2022-11-10" }, "is_primary": { "type": "integer", "example": "0" } }, "type": "object" } }, "images": { "type": "array", "items": { "properties": { "license": { "type": "string", "example": "D1234567SS" }, "file_name": { "type": "string", "example": "filename.jpg" }, "mime_type": { "type": "string", "example": "jpg" }, "collection": { "type": "string", "example": "roof_front" }, "uuid": { "type": "string", "example": "a58656c9-2d13-4249-b3ec-29a5635710ce" }, "root": { "type": "string", "example": "" } }, "type": "object" } }, "status": { "type": "string", "example": "completed" }, "inspection_id": { "type": "integer", "example": "1" } }, "type": "object" } }, "Offline Inspection": { "schema": { "required": [ "drivers", "name", "email", "phone", "address", "license", "license_expiration_date", "status", "reservation_code", "unit_license", "customer", "timestamp", "type" ], "properties": { "drivers": { "type": "array", "items": { "properties": { "name": { "type": "string", "example": "joe" }, "dob": { "type": "string", "example": "1995-5-2" }, "email": { "type": "string", "example": "[email protected]" }, "phone": { "type": "string", "example": "01223456789" }, "address": { "type": "string", "example": "ramallah" }, "license": { "type": "string", "example": "D1234567SS" }, "license_expiration_date": { "type": "string", "example": "2022-11-10" }, "is_primary": { "type": "integer", "example": "0" } }, "type": "object" } }, "images": { "type": "array", "items": { "properties": { "license": { "type": "string", "example": "D1234567SS" }, "file_name": { "type": "string", "example": "filename.jpg" }, "mime_type": { "type": "string", "example": "jpg" }, "collection": { "type": "string", "example": "roof_front" }, "uuid": { "type": "string", "example": "a58656c9-2d13-4249-b3ec-29a5635710ce" }, "root": { "type": "string", "example": "" } }, "type": "object" } }, "status": { "type": "string", "example": "completed" }, "reservation_code": { "type": "string", "example": "012345" }, "unit_license": { "type": "string", "example": "6AAR510" }, "customer": { "type": "string", "example": "Tofi" }, "timestamp": { "type": "string", "example": "2023-01-05 09:26:00" }, "type": { "type": "string", "example": "start" } }, "type": "object" } } } }, "responses": { "200": { "description": "Success", "content": { "Inspection exists": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "" }, "data": { "type": "object", "example": { "public_link": "http://rental360-api.test/inspection-details/RG7KyNp5PZ?signature=1f687cefa504f9e9c871b2ec4cd4c6dab8d12abdd52c956ebf356b771a3d143a", "id": "1", "code": "res001-start-Larson, Jerde and Harris", "type": "start", "status": "open", "inspected_at": "13 Nov, 2022", "reservation": { "code": "res001", "type": "rental", "rental_status": "active", "start_location": { "id": 18, "code": "L-018", "name": "Jerrold" }, "end_location": { "id": 27, "code": "L-027", "name": "Allan" }, "starts_at": "28 Oct, 2022", "ends_at": "22 Nov, 2022", "unit": { "code": "U-000767", "vin": "lANSXw7doq8U", "license": "tyieZ0SL", "engin": "diesel", "make": "Schneider, Schumm and Turcotte", "model": "BG", "model_year": "2018", "status": "active" }, "customer": { "type": "personal", "name": "Larson, Jerde and Harris", "first_name": "Cesar", "last_name": "Wisozk", "address": "13995 Lindsey Garden Apt. 459\\nSouth Janetbury, MS 15275-6361", "city": "New Ted", "state": "Mississippi", "zip": "85829-8118", "phone": "+18068603215", "email": "[email protected]" } }, "drivers": [ { "id": "1", "name": "joe", "dob": "1995-5-2", "email": "[email protected]", "phone": "01223456789", "address": "ramallah", "license": "D1234567SS", "license_expiration_date": "2022-11-10", "images": [ { "id": 15, "driver_id": 1, "file_name": "filename.jpg", "mime_type": "jpg", "collection": "roof_front", "description": null, "url": "inspections/6/filename.jpg", "thumb": "inspections/6/filename.jpg", "damage_tags": [] } ] } ], "images": [ { "id": 5, "driver_id": null, "file_name": "image.jpg", "mime_type": "jpg", "collection": "roof_front", "description": null, "url": "inspections/6/image.jpg", "thumb": "inspections/6/image.jpg", "damage_tags": [] } ], "timestamp": 1673867713000 } } }, "type": "object" } }, "Offline Inspection": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "Request has been submitted" } } } } } }, "422": { "description": "The given data was invalid.", "content": { "Inspection exists": { "schema": { "properties": { "message": { "type": "string", "example": "The drivers field is required. (and 5 more errors)" }, "error": { "type": "object", "example": { "drivers": "The drivers field is required.", "drivers.*.name": "The name field is required.", "drivers.*.phone": "The phone field is required.", "drivers.*.address": "The address field is required.", "drivers.*.license": "The license field is required.", "drivers.*.license_expiration_date": "The license_expiration_date field is required." } } }, "type": "object" } }, "Offline Inspection": { "schema": { "properties": { "message": { "type": "string", "example": "The drivers field is required. (and 9 more errors)" }, "error": { "type": "object", "example": { "drivers": "The drivers field is required.", "drivers.*.name": "The name field is required.", "drivers.*.phone": "The phone field is required.", "drivers.*.address": "The address field is required.", "drivers.*.license": "The license field is required.", "drivers.*.license_expiration_date": "The license_expiration_date field is required.", "reservation_code": "The reservation code field is required.", "unit_licensee": "The unit license field is required.", "customer": "The customer name field is required.", "timestamp": "The timestamp field is required." } } }, "type": "object" } } } } } } }, "/api/v1/reservation": { "post": { "tags": [ "Inspection" ], "summary": "Create Reservation with Unit and Customer", "operationId": "11ec1bb47486e56d7e0221e1306641bb", "requestBody": { "description": "Send a required Data for reservation with customer and unit", "required": true, "content": { "application/json": { "schema": { "required": [ "reservation", "customer", "unit" ], "properties": { "reservation": { "type": "object", "properties": { "code": { "type": "string", "example": "312253" }, "type": { "type": "string", "example": "Rental" }, "rental_status": { "type": "string", "example": "completed" }, "start_location": { "properties": { "id": { "type": "integer", "example": "5" }, "code": { "type": "string", "example": "LA" }, "name": { "type": "string", "example": "Angeles" } } }, "end_location": { "properties": { "id": { "type": "integer", "example": "5" }, "code": { "type": "string", "example": "LA" }, "name": { "type": "string", "example": "Angeles" } } } } }, "customer": { "type": "object", "properties": { "type": { "type": "string", "example": "personal" }, "name": { "type": "string", "example": "Tofi" }, "phone": { "type": "string", "example": "(646) 299-5059" }, "email": { "type": "string", "example": "[email protected]" }, "city": { "type": "string", "example": "Sacramento" } } }, "unit": { "type": "object", "properties": { "code": { "type": "string", "example": "Beth" }, "license": { "type": "string", "example": "6AAR510" }, "model": { "type": "string", "example": "E-Series" }, "model_year": { "type": "integer", "example": "2007" } } } }, "type": "object" } } } }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "properties": { "status": { "type": "string", "example": "success" }, "message": { "type": "string", "example": "" }, "data": { "type": "object", "example": { "reservation": { "code": "312253", "type": "Rental", "rental_status": "completed", "start_location": { "id": 5, "code": "LA", "name": "Angeles" }, "end_location": { "id": 5, "code": "LA", "name": "Angeles" }, "unit_id": 5, "customer_id": 5 }, "customer": { "id": 5, "type": "personal", "name": "Tofi", "phone": "(646) 299-5059", "email": "[email protected]", "city": "Sacramento" }, "unit": { "id": 5, "code": "Beth", "license": "6AAR510", "model": "E-Series", "model_year": "2007" } } } }, "type": "object" } } } }, "422": { "description": "The given data was invalid.", "content": { "application/json": { "schema": { "properties": { "message": { "type": "string", "example": "The reservation field is required. (and 5 more errors)" }, "error": { "type": "object", "example": { "reservation" : "The reservation field is required.", "reservation.code" : "The reservation.code field is required.", "reservation.type" : "The reservation.type field is required.", "reservation.rental_status" : "The reservation.rental_status field is required.", "reservation.start_location" : "The reservation.start_location field is required.", "reservation.end_location" : "The reservation.end_location field is required." } } }, "type": "object" } } } } } } } } }