MENU navbar-image

Introduction

A description of your API endpoints and their usage.

This documentation aims to provide all the information you need to work with our API.

<aside>As you scroll, you'll see code examples for working with the API in different programming languages in the dark area to the right (or as part of the content on mobile).
You can switch the language used with the tabs at the top right (or from the nav menu at the top left on mobile).</aside>

Authenticating requests

This API is not authenticated.

Admin Profile Management

Admin: Reset User Password

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/admin/reset-user-pass" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"user@example.com\",
    \"password\": \"newpassword123\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/reset-user-pass"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "user@example.com",
    "password": "newpassword123"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "message": "Password reset successfully. An email has been sent to the user."
}
 

Example response (404):


{
    "message": "User not found"
}
 

Request      

POST api/admin/reset-user-pass

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

email   string     

The email address of the user. Example: user@example.com

password   string     

The new password. Must be confirmed. Example: newpassword123

Admin: Change User Status

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/admin/user-status/9ecffa6c-824e-499c-b814-9465603fed22" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"active\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/user-status/9ecffa6c-824e-499c-b814-9465603fed22"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": "active"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


The user with updated status.
 

Example response (400):


Invalid status provided.
 

Request      

POST api/admin/user-status/{user_uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

user_uuid   string     

Example: 9ecffa6c-824e-499c-b814-9465603fed22

Body Parameters

status   string     

The new status of the user. One of: locked, active. Example: active

Authentication

User Login

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/auth/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"user@example.com\",
    \"password\": \"secretpassword123\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/auth/login"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "user@example.com",
    "password": "secretpassword123"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 1,
        "name": "John Doe",
        "email": "user@example.com"
    },
    "meta": {
        "token": "your-auth-token"
    }
}
 

Example response (500):


{
    "error": "Token generation failed"
}
 

Request      

POST api/auth/login

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

email   string     

The email address of the user. Example: user@example.com

password   string     

The password for the user account. Example: secretpassword123

Chats

Display a listing of the chats.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/admin/chats" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"search\": \"consequatur\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/chats"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "search": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/admin/chats

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

search   string  optional    

Example: consequatur

Store a newly created chat message.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/admin/chats/9ecffa6c-824e-499c-b814-9465603fed22" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "message=vmqeopfuudtdsufvyvddq"\
    --form "service=consequatur"\
    --form "file=@/tmp/phplJZYiI" 
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/chats/9ecffa6c-824e-499c-b814-9465603fed22"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('message', 'vmqeopfuudtdsufvyvddq');
body.append('service', 'consequatur');
body.append('file', document.querySelector('input[name="file"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Request      

POST api/admin/chats/{receiver?}

Headers

Content-Type        

Example: multipart/form-data

Accept        

Example: application/json

URL Parameters

receiver   string  optional    

Example: 9ecffa6c-824e-499c-b814-9465603fed22

Body Parameters

message   string     

Must not be greater than 255 characters. Example: vmqeopfuudtdsufvyvddq

file   file  optional    

Must be an image. Must not be greater than 5120 kilobytes. Example: /tmp/phplJZYiI

service   string  optional    

The uuid of an existing record in the our_services table. Example: consequatur

Get distinct services involved in a user's chats.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/admin/chats/user/9ecffa6c-824e-499c-b814-9465603fed22" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/chats/user/9ecffa6c-824e-499c-b814-9465603fed22"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/admin/chats/user/{user?}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

user   string  optional    

Example: 9ecffa6c-824e-499c-b814-9465603fed22

Display the specified user's chat messages.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/admin/view-chats/9ecffa6c-824e-499c-b814-9465603fed22/c3bdfc89-ab64-4ebf-b331-305d5ba41783" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/view-chats/9ecffa6c-824e-499c-b814-9465603fed22/c3bdfc89-ab64-4ebf-b331-305d5ba41783"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/admin/view-chats/{user?}/{service?}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

user   string  optional    

Example: 9ecffa6c-824e-499c-b814-9465603fed22

service   string  optional    

Example: c3bdfc89-ab64-4ebf-b331-305d5ba41783

Display the specified user's chat messages.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/admin/my-chats/c3bdfc89-ab64-4ebf-b331-305d5ba41783" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/my-chats/c3bdfc89-ab64-4ebf-b331-305d5ba41783"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/admin/my-chats/{service?}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

service   string  optional    

Example: c3bdfc89-ab64-4ebf-b331-305d5ba41783

Compliances

Store a newly created Compliance in storage.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/admin/compliances" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"consequatur\",
    \"value\": \"{\\\"title\\\": Oil change}\",
    \"status\": true
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/compliances"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "consequatur",
    "value": "{\"title\": Oil change}",
    "status": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/admin/compliances

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

name   string     

The name of compliance. One of: policy, terms&conditions, rules, faqs Example: consequatur

value   ckeditor     

The value of the compliance. Example: {"title": Oil change}

status   boolean  optional    

Optional. Status flag. Example: true

Update an existing Compliances in storage.

Example request:
curl --request PUT \
    "http://knowdrive.techtrovelab.com/api/admin/compliances/3c9c142e-7f86-4f44-8611-0e09539f2d6a" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"consequatur\",
    \"value\": \"{\\\"title\\\": Oil change}\",
    \"status\": true
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/compliances/3c9c142e-7f86-4f44-8611-0e09539f2d6a"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "consequatur",
    "value": "{\"title\": Oil change}",
    "status": true
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/admin/compliances/{uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

uuid   string     

Example: 3c9c142e-7f86-4f44-8611-0e09539f2d6a

Body Parameters

name   string     

The name of compliance. One of: policy, terms&conditions, rules, faqs Example: consequatur

value   ckeditor     

The value of the compliance. Example: {"title": Oil change}

status   boolean  optional    

Optional. Status flag. Example: true

Remove the specified Compliances from storage.

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/admin/compliances/3c9c142e-7f86-4f44-8611-0e09539f2d6a" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/compliances/3c9c142e-7f86-4f44-8611-0e09539f2d6a"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/admin/compliances/{uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

uuid   string     

Example: 3c9c142e-7f86-4f44-8611-0e09539f2d6a

Display a listing of the Compliances.

Search Compliances by name.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/compliances" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"consequatur\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/compliances"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "consequatur"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 57
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": []
}
 

Request      

GET api/compliances

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

name   string  optional    

Optional. Filter by compliance name. One of: policy, terms&conditions, rules, faqs Example: consequatur

Display the specified Compliances.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/compliances/3c9c142e-7f86-4f44-8611-0e09539f2d6a/display" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/compliances/3c9c142e-7f86-4f44-8611-0e09539f2d6a/display"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 56
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": {
        "id": 1,
        "uuid": "3c9c142e-7f86-4f44-8611-0e09539f2d6a",
        "name": "Terms&Conditions",
        "value": "{\r\n  \"Effective Date\": \"2025-08-27\",\r\n  \"Introduction\": \"These Terms and Conditions (\\\"Terms\\\") govern your use of the AutoMotor mobile application and services in Nigeria. By accessing or using our platform, you agree to be bound by these Terms. Please read them carefully.\",\r\n  \"1. Car Hire\": \"AutoMotor offers vehicle hire services for personal and commercial use. All hires are subject to availability, proper identification, and a valid Nigerian driver's licence. Hirers are responsible for the vehicle during the hire period and must return it in the condition it was received. Late returns may attract additional charges.\",\r\n  \"2. Car Sales\": \"AutoMotor facilitates the sale of new and used vehicles. Listings may be by AutoMotor or third-party sellers. Buyers are responsible for verifying vehicle condition, documents (e.g., proof of ownership, customs papers), and negotiating directly with sellers where applicable. AutoMotor is not liable for disputes arising from sales between third parties.\",\r\n  \"3. Installation Services\": \"AutoMotor provides installation of automotive parts and accessories, including tyres, batteries, infotainment systems, etc. All installations are carried out by trained technicians. Customers are advised to verify compatibility of parts before installation. Warranty applies only where stated.\",\r\n  \"4. Vehicle Repairs and Servicing\": \"AutoMotor offers mechanical, electrical, and general servicing for cars. Customers must disclose known vehicle issues accurately. Repair timelines are estimates and may vary based on diagnostic outcomes. AutoMotor is not liable for further faults unrelated to the agreed service scope.\",\r\n  \"5. Consultations\": \"Expert consultation services include diagnostics, maintenance planning, and automotive advice. Recommendations are based on provided information and inspection findings. AutoMotor is not liable for outcomes resulting from incomplete or inaccurate information provided by the user.\",\r\n  \"6. Payments\": \"All service charges must be paid via approved payment channels before or upon completion of service. Prices are in Nigerian Naira (₦) and include applicable taxes. AutoMotor uses secure third-party payment processors and is not responsible for payment delays or failures caused by third-party systems.\",\r\n  \"7. Cancellations and Refunds\": \"Cancellations must be made at least 24 hours before the scheduled service. Refunds, if approved, will be processed within 5–7 working days. No refunds will be issued for services already rendered or for late cancellations.\",\r\n  \"8. User Conduct\": \"Users must not misuse the app, submit false information, or engage in fraudulent activities. AutoMotor reserves the right to suspend or terminate accounts involved in misconduct or violation of these Terms.\",\r\n  \"9. Limitation of Liability\": \"AutoMotor is not liable for direct or indirect losses, including damage to vehicles, loss of income, or disputes arising from third-party transactions. All services are provided 'as is' without warranties beyond those expressly stated.\",\r\n  \"10. Intellectual Property\": \"All content on the AutoMotor app is the property of AutoMotor or its licensors and is protected under Nigerian intellectual property laws. Unauthorized use, reproduction, or distribution is prohibited.\",\r\n  \"11. Changes to Terms\": \"AutoMotor may update these Terms at any time. Users will be notified through the app. Continued use after updates constitutes acceptance of the new Terms.\",\r\n  \"12. Governing Law\": \"These Terms shall be governed by and interpreted in accordance with the laws of the Federal Republic of Nigeria. Any disputes shall be subject to the jurisdiction of Nigerian courts.\"\r\n}\r\n",
        "status": true,
        "created_at": "2025-08-27T17:01:10.000000Z",
        "updated_at": "2025-08-27T17:01:10.000000Z"
    }
}
 

Request      

GET api/compliances/{compliance_uuid}/display

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

compliance_uuid   string     

Example: 3c9c142e-7f86-4f44-8611-0e09539f2d6a

Consultation Booking

Display a listing of the consultations.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/admin/consultations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/consultations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/admin/consultations

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Display the specified consultation.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/admin/consultations/view" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/consultations/view"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/admin/consultations/view

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Remove the specified consultation from storage.

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/admin/consultations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/consultations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/admin/consultations

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Store a newly created consultation.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/consultations" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"vmqeopfuudtdsufvyvddq\",
    \"phone\": 11613.31890586000008624978363513946533203125,
    \"email\": \"claire77@example.net\",
    \"description\": \"Minus voluptatem quisquam quibusdam sed.\",
    \"priority\": \"consequatur\",
    \"type\": \"consequatur\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/consultations"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "vmqeopfuudtdsufvyvddq",
    "phone": 11613.31890586000008624978363513946533203125,
    "email": "claire77@example.net",
    "description": "Minus voluptatem quisquam quibusdam sed.",
    "priority": "consequatur",
    "type": "consequatur"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/consultations

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

name   string     

Must not be greater than 255 characters. Example: vmqeopfuudtdsufvyvddq

phone   number     

Example: 11613.31890586

email   string     

Must be a valid email address. Must not be greater than 255 characters. Example: claire77@example.net

description   string     

Must not be greater than 255 characters. Example: Minus voluptatem quisquam quibusdam sed.

priority   string     

Example: consequatur

type   string     

Example: consequatur

Coupons

Display a listing of the Coupons.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/coupons" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"sort\": \"asc\",
    \"expiry\": false,
    \"search\": \"qeopfuudt\",
    \"range\": {
        \"from\": \"2025-11-04T09:54:42\",
        \"to\": \"2025-11-04T09:54:42\"
    }
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/coupons"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "sort": "asc",
    "expiry": false,
    "search": "qeopfuudt",
    "range": {
        "from": "2025-11-04T09:54:42",
        "to": "2025-11-04T09:54:42"
    }
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/coupons

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

sort   string  optional    

Example: asc

Must be one of:
  • desc
  • asc
expiry   boolean  optional    

Example: false

search   string  optional    

Must not be greater than 10 characters. Example: qeopfuudt

range   object  optional    

Must contain 2 items.

from   string  optional    

This field is required when range is present. Must be a valid date. Example: 2025-11-04T09:54:42

to   string  optional    

This field is required when range is present. Must be a valid date. Example: 2025-11-04T09:54:42

Get the current authenticated user's active coupon.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/coupons/mycoupon" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/coupons/mycoupon"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/coupons/mycoupon

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Store a newly created Coupon in storage.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/coupons" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"interval\": \"year\",
    \"interval_unit\": 1,
    \"percentage_waived\": 1,
    \"name\": \"eopfuudtdsufvyvddqamn\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/coupons"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "interval": "year",
    "interval_unit": 1,
    "percentage_waived": 1,
    "name": "eopfuudtdsufvyvddqamn"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/coupons

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

user   string  optional    

The id of an existing record in the users table.

interval   string  optional    

Example: year

Must be one of:
  • month
  • day
  • week
  • year
interval_unit   number  optional    

Must be between 1 and 30. Example: 1

percentage_waived   number     

Must be between 0 and 100. Example: 1

name   string     

Must not be greater than 100 characters. Example: eopfuudtdsufvyvddqamn

description   string  optional    

Mark a coupon as used.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/coupons/8f7dba63-6c3a-4cde-bb8f-111111111111/mark-used" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/coupons/8f7dba63-6c3a-4cde-bb8f-111111111111/mark-used"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Request      

POST api/coupons/{coupon_uuid}/mark-used

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

coupon_uuid   string     

Example: 8f7dba63-6c3a-4cde-bb8f-111111111111

Display the specified Coupon.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/coupons/8f7dba63-6c3a-4cde-bb8f-111111111111" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/coupons/8f7dba63-6c3a-4cde-bb8f-111111111111"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/coupons/{uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

uuid   string     

Example: 8f7dba63-6c3a-4cde-bb8f-111111111111

Remove the specified Coupon from storage.

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/coupons/8f7dba63-6c3a-4cde-bb8f-111111111111" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/coupons/8f7dba63-6c3a-4cde-bb8f-111111111111"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/coupons/{uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

uuid   string     

Example: 8f7dba63-6c3a-4cde-bb8f-111111111111

Endpoints

Redirect the user to Google's OAuth page.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/auth/google" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/auth/google"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 59
vary: Origin
 

{
    "status": 500,
    "success": false,
    "error": {
        "code": "internal_server_error",
        "message": "Class \"Laravel\\Socialite\\Facades\\Socialite\" not found"
    }
}
 

Request      

GET api/auth/google

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/auth/google/callback

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/auth/google/callback" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/auth/google/callback"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (500):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 58
vary: Origin
 

{
    "status": 500,
    "success": false,
    "error": {
        "code": "internal_server_error",
        "message": "Class \"Laravel\\Socialite\\Facades\\Socialite\" not found"
    }
}
 

Request      

GET api/auth/google/callback

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/send-message-link" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "file=@/tmp/php7dfZTq" 
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/send-message-link"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('file', document.querySelector('input[name="file"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

GET api/consultation-type

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/consultation-type" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/consultation-type"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 50
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        "general",
        "technical",
        "sales",
        "other"
    ]
}
 

Request      

GET api/consultation-type

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/category

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/category" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/category"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 49
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        "hire",
        "sales",
        "parts",
        "installation",
        "repair",
        "accessories"
    ]
}
 

Request      

GET api/category

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/car-type

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/car-type" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/car-type"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 48
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        "all",
        "sedan",
        "suv",
        "coupe",
        "hatchback",
        "convertible",
        "minivan",
        "pickup",
        "wagon",
        "crossover",
        "sports_car",
        "luxury",
        "electric",
        "hybrid",
        "van",
        "roadster",
        "truck",
        "station_wagon",
        "cng"
    ]
}
 

Request      

GET api/car-type

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/car-brand

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/car-brand" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/car-brand"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 47
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        "all",
        "toyota",
        "honda",
        "nissan",
        "mercedes_benz",
        "ford",
        "kia",
        "mazda",
        "chevrolet",
        "bmw",
        "volkswagen",
        "renault",
        "hyundai",
        "lexus",
        "peugeot",
        "land_rover",
        "jeep",
        "subaru",
        "mitsubishi",
        "infiniti",
        "dodge",
        "audi",
        "chrysler",
        "ferrari",
        "porsche"
    ]
}
 

Request      

GET api/car-brand

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/settings-type

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/settings-type" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/settings-type"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 46
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        "whatsapp",
        "phone",
        "instagram",
        "payment",
        "address"
    ]
}
 

Request      

GET api/settings-type

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/user-status

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/user-status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/user-status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 45
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        "active",
        "disabled",
        "locked",
        "banned"
    ]
}
 

Request      

GET api/user-status

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/service-status

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/service-status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/service-status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 44
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        "available",
        "sold",
        "unavailable"
    ]
}
 

Request      

GET api/service-status

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/priority-type

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/priority-type" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/priority-type"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 43
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        "high",
        "Medium",
        "low"
    ]
}
 

Request      

GET api/priority-type

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/role-type

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/role-type" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/role-type"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 42
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        "super admin",
        "staff",
        "member",
        "administrator"
    ]
}
 

Request      

GET api/role-type

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

POST api/webhook/flutterwave

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/webhook/flutterwave" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/webhook/flutterwave"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Request      

POST api/webhook/flutterwave

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

GET api/migrate

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/migrate" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/migrate"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
content-type: text/html; charset=UTF-8
cache-control: no-cache, private
x-ratelimit-limit: 60
x-ratelimit-remaining: 41
vary: Origin
 

0
 

Request      

GET api/migrate

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Notifications

Display a listing of the notifications.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/notifications/user/9ecffa6c-824e-499c-b814-9465603fed22" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"is_read\": false
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/notifications/user/9ecffa6c-824e-499c-b814-9465603fed22"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "is_read": false
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/notifications/user/{user?}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

user   string  optional    

Example: 9ecffa6c-824e-499c-b814-9465603fed22

Body Parameters

is_read   boolean  optional    

Example: false

Store a newly created notification in storage.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/notifications" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"title\": \"vmqeopfuudtdsufvyvddq\",
    \"content\": \"consequatur\",
    \"user\": [
        11613.31890586000008624978363513946533203125
    ]
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/notifications"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "title": "vmqeopfuudtdsufvyvddq",
    "content": "consequatur",
    "user": [
        11613.31890586000008624978363513946533203125
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/notifications

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

title   string     

Must not be greater than 100 characters. Example: vmqeopfuudtdsufvyvddq

content   string     

Example: consequatur

user   number[]  optional    

The id of an existing record in the users table.

GET api/notifications/{uuid}

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/notifications/5d300955-d9f0-4ed6-8bd9-f3c2e66a98f1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/notifications/5d300955-d9f0-4ed6-8bd9-f3c2e66a98f1"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/notifications/{uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

uuid   string     

Example: 5d300955-d9f0-4ed6-8bd9-f3c2e66a98f1

DELETE api/notifications/{uuid}

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/notifications/5d300955-d9f0-4ed6-8bd9-f3c2e66a98f1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/notifications/5d300955-d9f0-4ed6-8bd9-f3c2e66a98f1"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/notifications/{uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

uuid   string     

Example: 5d300955-d9f0-4ed6-8bd9-f3c2e66a98f1

OurServices

Create a new service

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/admin/services" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "category=hire"\
    --form "brand=toyota"\
    --form "type=suv"\
    --form "model=camry"\
    --form "fee=100.00"\
    --form "has_online_payment=1"\
    --form "location=Anywhere, Ibadan"\
    --form "description={"condition": Oil change}"\
    --form "status=available"\
    --form "image_file[]=@/tmp/phpvrg0D2" 
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/services"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('category', 'hire');
body.append('brand', 'toyota');
body.append('type', 'suv');
body.append('model', 'camry');
body.append('fee', '100.00');
body.append('has_online_payment', '1');
body.append('location', 'Anywhere, Ibadan');
body.append('description', '{"condition": Oil change}');
body.append('status', 'available');
body.append('image_file[]', document.querySelector('input[name="image_file[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Request      

POST api/admin/services

Headers

Content-Type        

Example: multipart/form-data

Accept        

Example: application/json

Body Parameters

category   string     

The service category. Example: hire

brand   string  optional    

optional The car brand. Example: toyota

type   string  optional    

optional The car type. Example: suv

model   string  optional    

optional The car model. Example: camry

fee   numeric  optional    

nullable. Example: 100.00

has_online_payment   boolean  optional    

nullable. Example: true

location   string  optional    

nullable. Example: Anywhere, Ibadan

description   string  optional    

Description of the service. Example: {"condition": Oil change}

status   string  optional    

The status. Example: available

image_file   file[]  optional    

Must be an image. Must not be greater than 4048 kilobytes.

Update a service

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/admin/services/c3bdfc89-ab64-4ebf-b331-305d5ba41783" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "description=Updated oil change"\
    --form "location=Anywhere, Ibadan"\
    --form "fee=100.00"\
    --form "has_online_payment=1"\
    --form "status=sold"\
    --form "image_file[]=@/tmp/phplgDn0m" 
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/services/c3bdfc89-ab64-4ebf-b331-305d5ba41783"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('description', 'Updated oil change');
body.append('location', 'Anywhere, Ibadan');
body.append('fee', '100.00');
body.append('has_online_payment', '1');
body.append('status', 'sold');
body.append('image_file[]', document.querySelector('input[name="image_file[]"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Request      

POST api/admin/services/{uuid}

Headers

Content-Type        

Example: multipart/form-data

Accept        

Example: application/json

URL Parameters

uuid   string     

Example: c3bdfc89-ab64-4ebf-b331-305d5ba41783

Body Parameters

description   string  optional    

The new description. Example: Updated oil change

location   string  optional    

nullable. Example: Anywhere, Ibadan

image_file   file[]  optional    

Must be an image. Must not be greater than 4048 kilobytes.

fee   numeric  optional    

nullable. Example: 100.00

has_online_payment   boolean  optional    

nullable. Example: true

status   string     

The updated status. Example: sold

Delete a service

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/admin/services/c3bdfc89-ab64-4ebf-b331-305d5ba41783" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/services/c3bdfc89-ab64-4ebf-b331-305d5ba41783"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/admin/services/{uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

uuid   string     

Example: c3bdfc89-ab64-4ebf-b331-305d5ba41783

Update service status

Example request:
curl --request PATCH \
    "http://knowdrive.techtrovelab.com/api/admin/services/c3bdfc89-ab64-4ebf-b331-305d5ba41783/status" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"status\": \"sold\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/services/c3bdfc89-ab64-4ebf-b331-305d5ba41783/status"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "status": "sold"
};

fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PATCH api/admin/services/{service_uuid}/status

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

service_uuid   string     

Example: c3bdfc89-ab64-4ebf-b331-305d5ba41783

Body Parameters

status   string     

service statuses. Example: sold

List all our services

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/services?page=1&per_page=10&sort=desc&status=available&search=ford&type=brand&range%5Bfrom%5D=2024-01-01&range%5Bto%5D=2024-12-31" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/services"
);

const params = {
    "page": "1",
    "per_page": "10",
    "sort": "desc",
    "status": "available",
    "search": "ford",
    "type": "brand",
    "range[from]": "2024-01-01",
    "range[to]": "2024-12-31",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 53
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        {
            "id": 119,
            "uuid": "71755105-de11-4ca6-a7df-004c5b26061d",
            "category": "Installation",
            "brand": "Mercedes_Benz",
            "type": "Sedan",
            "model": "1977",
            "fee": 1200000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": true,
            "description": "[{\"title\":\"Tell us your preferred prints or color combinations, and we’ll bring your vision to life! Whether you want a bold, vibrant change or a sleek, modern finish. We’ll print and design the wrap to your exact specifications.\\nWe provide Premium Quality Vinyl for long-lasting results.\\nExpert Installation for a flawless finish\\nFull Customization making your car truly one-of-a-kind.\\n\\n📞 Book Your Wrap Today!\\nGet in touch now, and let’s transform your vehicle into a masterpiece.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303354/qrnldav68v7ioe5yyuum.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303356/b75obtosmu7rnepspj5d.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303358/jzxzrqnekh9yo0jftrrk.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303360/maj90rxdqgxkftztcea2.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303361/wfeme5rzwm8pje9ovd3j.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303362/nvcsgjgx04olsvv5n0ey.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303363/jpu71qimjprsdf13po4n.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303364/u9vada9xrjjxgkuvbduv.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303365/qoqljvmrjpfz6iliaekz.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303366/cnksceglru0yjsitpjqa.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-24T10:54:22.000000Z",
            "updated_at": "2025-10-24T10:54:22.000000Z",
            "deleted_at": null
        },
        {
            "id": 1,
            "uuid": "c3bdfc89-ab64-4ebf-b331-305d5ba41783",
            "category": "Sales",
            "brand": "Lexus",
            "type": "Suv",
            "model": "Rx350 2011",
            "fee": 18500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": true,
            "description": "[{\"title\":\"2011 model, clean and sharp. Powerful engine, smooth ride, leather interior with chilling AC, and plenty of comfort features. Well-maintained, reliable, and ready for the road — buy and drive.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598778/jwmfelsvl46s9bxxuk37.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598779/nxrvcjafgvcavgce6fua.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598779/t6uyniuqdr2vh873c0rg.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598780/cuauervshqgkki9wghpk.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598781/xs6bitapknz1kuzxl4ep.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598782/ir8n9hjiqftad4doxmjx.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T00:05:44.000000Z",
            "updated_at": "2025-08-31T00:05:44.000000Z",
            "deleted_at": null
        },
        {
            "id": 120,
            "uuid": "3e300270-6a5c-48f9-a85b-e0d57e5323a3",
            "category": "Accessories",
            "brand": "Toyota",
            "type": "All",
            "model": "All Model",
            "fee": 20000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Glittering steering logo for all cars\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303695/wvvuzixvc0y9siocxz5h.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-24T10:59:50.000000Z",
            "updated_at": "2025-10-24T10:59:50.000000Z",
            "deleted_at": null
        },
        {
            "id": 118,
            "uuid": "93aea53c-4a42-4e48-aaa8-086fdddb607a",
            "category": "Hire",
            "brand": "Mercedes_Benz",
            "type": "Sedan",
            "model": "1977",
            "fee": 70000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Looking for a classic, stylish car for your next photo shoot or movie production? This 1977 Mercedes-Benz is the perfect choice!\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303099/oet4vlaiv8ln6jqcc8az.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303101/muuodzzgkhkn5grleqcv.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303103/s1wru7amgw0sdcl6otxj.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303104/vmkw6wkf7uguhhgdcpst.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303105/ao9ybrgyxqzuekdbgdqr.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-24T10:50:02.000000Z",
            "updated_at": "2025-10-24T10:50:02.000000Z",
            "deleted_at": null
        },
        {
            "id": 117,
            "uuid": "f538d757-eb04-44f8-aec4-15ea6477275e",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "Lion Power Fuel Pump",
            "fee": 16000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"High quality Lion Power Fuel Pump fits for all vehicles \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760957827/qpfopskwpf9ki6mg37pj.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:55:27.000000Z",
            "updated_at": "2025-10-20T10:55:27.000000Z",
            "deleted_at": null
        },
        {
            "id": 116,
            "uuid": "9a2ec340-14d7-4b54-934a-b50bf1b5416a",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "Original Eagle Fuel Pump",
            "fee": 14000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"High quality Fuel Pump\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760957687/dxznewbpgxglrrwcupd3.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:53:07.000000Z",
            "updated_at": "2025-10-20T10:53:07.000000Z",
            "deleted_at": null
        },
        {
            "id": 115,
            "uuid": "d40628dd-f87c-4aec-a501-dc8d8e729b6c",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "Original Linkage",
            "fee": 10000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Fits for all vehicles \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760957478/zvvhzeamgsdr3qteynt2.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:49:39.000000Z",
            "updated_at": "2025-10-20T10:49:39.000000Z",
            "deleted_at": null
        },
        {
            "id": 114,
            "uuid": "500a0cda-d7fd-4d0a-932c-cf52afb2f535",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "Original Ball Joint",
            "fee": 10000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Fits All Vehicle Types\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760957135/tjhyeu2viniinkzqnldz.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760957135/gzxhqvh4x9bo2qbrc7qp.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:43:56.000000Z",
            "updated_at": "2025-10-20T10:43:56.000000Z",
            "deleted_at": null
        },
        {
            "id": 113,
            "uuid": "8bee9919-4680-4e9b-844b-e0144cdc0f82",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "All Cars",
            "fee": 13000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Original Ignition Coil – Fits All Vehicle Types\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760956685/adiarqetpwfu31hslidr.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:36:26.000000Z",
            "updated_at": "2025-10-20T10:36:26.000000Z",
            "deleted_at": null
        },
        {
            "id": 112,
            "uuid": "b782f87b-94d7-4b94-b2b8-56b703e5fd8c",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "Water Pump",
            "fee": 13000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"High-Quality Genuine Water Pump – Fits All Car Makes and Models\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760956385/zzmpymzqz5cylf1ukwzq.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760956386/r3btc7xebmcvmyexiucu.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:31:27.000000Z",
            "updated_at": "2025-10-20T10:31:27.000000Z",
            "deleted_at": null
        },
        {
            "id": 111,
            "uuid": "413f3b9b-fcf5-4a14-a0d4-f4b75437268b",
            "category": "Parts",
            "brand": "Toyota",
            "type": "All",
            "model": "All Toyota Brand",
            "fee": 8500,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Original Toyota Automatic Transmission Fluid (ATF) WS - 1 Liter\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760955978/telu0lj60lwkkmozupaq.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:24:38.000000Z",
            "updated_at": "2025-10-20T10:24:38.000000Z",
            "deleted_at": null
        },
        {
            "id": 110,
            "uuid": "a4b7f869-5f8b-41b9-b12f-ff3fbb62f380",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "T4 Transmission Oil",
            "fee": 9000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"T4 Transmission Oil\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760955236/lkk7iavpdlcibwdrt1np.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:12:16.000000Z",
            "updated_at": "2025-10-20T10:12:16.000000Z",
            "deleted_at": null
        },
        {
            "id": 109,
            "uuid": "d11f71c6-d2e8-421d-a7d7-dfd4827a3f3d",
            "category": "Sales",
            "brand": "Ford",
            "type": "Truck",
            "model": "2016",
            "fee": 40000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"2016 Ford f150 lariat edition, push start, panoramic roof, v6 engine, ecoboost system, and fuel efficient\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760440847/x6mden2xbdhb1jompxxu.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760440848/m8cap6qu1rdhnt2loqpn.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760440849/xpdc5kodyfyar8bpoauj.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760440850/ekdgbwpd2wbrfzawnrd4.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760440851/trixeee1noeheq1ql4zi.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760440852/ompjlowhkr9jhjqtlsyu.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-14T11:19:20.000000Z",
            "updated_at": "2025-10-14T11:19:20.000000Z",
            "deleted_at": null
        },
        {
            "id": 108,
            "uuid": "fe3326de-5b5f-4b62-b50b-f771124a30ab",
            "category": "Sales",
            "brand": "Hyundai",
            "type": "Sedan",
            "model": "2011 Sonata",
            "fee": 7000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Sharp and clean Hyundai 2011 sonata,keyless entry with clean leathered interior,untampered engine and gear,chilling AC.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1758961924/ktwsolaet8qoe6cj6igx.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1758961925/fl8k0rmn8bucc19xjrrl.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1758961925/d6ghecfdwyymm8u73hib.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1758961926/brfzwie6zvigmkpblmzp.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-27T08:30:55.000000Z",
            "updated_at": "2025-09-27T08:30:55.000000Z",
            "deleted_at": null
        },
        {
            "id": 107,
            "uuid": "abd669e3-a4b8-461d-bfb4-24ea544e1546",
            "category": "Parts",
            "brand": "Lexus",
            "type": "Sedan",
            "model": "2008 To 2012 Is250",
            "fee": 60000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"All 2008 to 2012 model manifold available for sale \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1758440831/trtebuv3lrcx5b4ozlcl.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-21T07:46:06.000000Z",
            "updated_at": "2025-09-21T07:46:06.000000Z",
            "deleted_at": null
        },
        {
            "id": 106,
            "uuid": "d4709f45-f423-4a91-a721-67fd403572f5",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Van",
            "model": "2022 Hiace",
            "fee": 240000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Travel safely and comfortably with a professional driver and a vehicle you can trust.(Price varies with location)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757504042/zpqllptfjdbfkzsf6kbv.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T11:33:11.000000Z",
            "updated_at": "2025-09-10T11:33:11.000000Z",
            "deleted_at": null
        },
        {
            "id": 105,
            "uuid": "c9f4cac7-9789-4cf9-99e5-dd071be19be6",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Suv",
            "model": "2018 Land Cruiser",
            "fee": 200000,
            "location": "Lagos",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Make every journey comfortable and memorable with our 2018 Toyota Land Cruiser. Perfect for family trips, corporate events, airport pickups, and special occasions. Enjoy spacious seating, smooth ride, strong AC, and reliable performance.(Price varies with location) Escorts available on request.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757503724/txrc6bmgmrjabr48ukez.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757503725/dmykiewidfjlkhqv8fuz.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757503726/xgdsq9xhv2sna9yzfhkl.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T11:27:55.000000Z",
            "updated_at": "2025-09-10T11:27:55.000000Z",
            "deleted_at": null
        },
        {
            "id": 104,
            "uuid": "555707b5-35d7-4da9-86d8-003244f3c2b7",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2009 Camry",
            "fee": 100000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Comfortable, reliable, and smooth ride. Perfect for airport transfers, events, or daily trips. Travel safely with a professional driver.(Price varies with location)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757503459/y2ceotdosrfsomfwuahb.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757503460/hxiypvbjbaysbt0wgrf7.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757503461/xzyrlpcwoocdi9epeum4.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T11:23:30.000000Z",
            "updated_at": "2025-09-10T11:23:30.000000Z",
            "deleted_at": null
        },
        {
            "id": 103,
            "uuid": "691bd0f0-47fc-474d-9545-b83c4f639f89",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Suv",
            "model": "2015",
            "fee": 150000,
            "location": "Lagos",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Perfect for weddings, corporate outings, airport transfers, and long-distance travel. Enjoy a safe, comfortable, and classy ride with a professional driver.(Price varies with location)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757503246/sththikyehhnzwd036s1.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757503247/rtwtbllffsnmgdza0ay5.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757503248/wtkpsqkat4r8rt1in2ih.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T11:19:57.000000Z",
            "updated_at": "2025-09-10T11:19:57.000000Z",
            "deleted_at": null
        },
        {
            "id": 102,
            "uuid": "7abc4526-878f-41df-8dc7-d096dbc9ca04",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Minivan",
            "model": "2006 Sienna",
            "fee": 150000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Need a reliable ride for your trips, events, or family outings? Our Toyota Sienna is available for hire, offering maximum comfort, spacious 3-row seating, and strong air conditioning. Perfect for airport pickups, weddings, road trips, and group transportation.(Price vary with location)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500649/gic7wiy8gyutq5lqxgqy.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500650/vlkzqgi9uu2l9vsybnll.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500651/tbgsudvd2pr46vqcpdfy.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500652/asxbvov2wnevh9aghb0g.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500653/n3lu1kxfajy6fxzai2qt.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T10:36:41.000000Z",
            "updated_at": "2025-09-10T10:36:41.000000Z",
            "deleted_at": null
        },
        {
            "id": 101,
            "uuid": "43a1f6da-8626-4e59-8472-006ba0367f31",
            "category": "Hire",
            "brand": "Honda",
            "type": "Minivan",
            "model": "2010 Odyssey",
            "fee": 150000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Looking for a reliable and spacious ride for family outings, events, or airport transfers? Our 2010 Honda Odyssey offers roomy 3-row seating, smooth suspension, strong AC, and a comfortable interior. Perfect for small groups, road trips, and special occasions.\\n\\nTravel in style, comfort, and safety with a professional driver at your service.( Price varies with location)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500374/w57qcoor9pooxwwsypqr.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500375/prrgvb2cgo07ykvqfxum.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500376/zqnaefq64lohogs4yza2.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T10:32:05.000000Z",
            "updated_at": "2025-09-10T10:32:05.000000Z",
            "deleted_at": null
        },
        {
            "id": 100,
            "uuid": "20e426b7-d1bf-4386-bdaf-376976c13824",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Van",
            "model": "Hiace",
            "fee": 150000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Need a comfortable and dependable vehicle for group travel or events? Our Toyota Hiace is available for hire, offering ample seating for 12–15 passengers, strong air conditioning, and a smooth ride. Perfect for airport transfers, corporate trips, school outings, and group tours.\\n\\nTravel safely and comfortably with a professional driver and a vehicle you can trust(price varies with location) escorts available on request. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500103/ysw5gnxebpdntum0z6n7.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500103/yryze7k613xolzvat8gx.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757500104/zk4fxw7qbgytw3andrvj.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T10:27:33.000000Z",
            "updated_at": "2025-09-10T10:27:33.000000Z",
            "deleted_at": null
        },
        {
            "id": 99,
            "uuid": "279407fd-5827-4260-830f-9dfc4624dd91",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Suv",
            "model": "2018 Prado",
            "fee": 170000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Looking for a premium SUV for your trips, events, or business needs? Our 2018 Toyota Prado is available for hire. Spacious, stylish, and reliable, it comes with luxury interior, strong AC, smooth suspension, and top-class comfort.\\n\\nPerfect for weddings, corporate outings, airport transfers, and long-distance travel. Enjoy a safe, comfortable, and classy ride with a professional driver.(Price varies with location). Escort available on request. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499926/nqwcgr0cavrgsmhliizd.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499927/jas8mbjbunwoijqyglyo.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499928/ymybasmogly37hgrgsmt.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499929/w4dde2k75ddb5eqeavvj.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T10:24:38.000000Z",
            "updated_at": "2025-09-10T10:24:38.000000Z",
            "deleted_at": null
        },
        {
            "id": 98,
            "uuid": "39efff36-ccf4-49ba-ba9a-23a0fc24944d",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Minivan",
            "model": "2008",
            "fee": 150000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Need a reliable ride for your trips, events, or family outings? Our Toyota Sienna is available for hire, offering maximum comfort, spacious 3-row seating, and strong air conditioning. Perfect for airport pickups, weddings, road trips, and group transportation.\\n\\nEnjoy a smooth and safe journey with a professional driver and a vehicle you can trust.(Price varies with location and comfortability)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499671/xmcqscijp4behuloe5qo.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499672/o45stsrcs9kwzbyojstj.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499673/ckhetz7eem5kj5zkjxji.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T10:20:22.000000Z",
            "updated_at": "2025-09-10T10:20:22.000000Z",
            "deleted_at": null
        },
        {
            "id": 97,
            "uuid": "aa298304-92df-40a9-abf2-cbec7ed84a1f",
            "category": "Sales",
            "brand": "Lexus",
            "type": "Sedan",
            "model": "2012 Gx350",
            "fee": 23500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Freshly imported, very clean and well-maintained. Equipped with All-Wheel Drive for smooth handling on all roads. Neat interior, chilling factory AC, strong engine and transmission, and reliable suspension. Luxury, comfort, and durability all in one.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499332/pgsxlik9mvkskfajshr1.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499333/zthm4qjh2zjd7ubgfmji.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499334/nhtbfl8x2fbmg02mbwoq.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499336/chakw1beffu6zmylee2w.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499337/cuef8fiyfuj03rxq3s16.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499338/uyjs5d5dmshgnobvyvu9.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757499339/zuyj6q93chjinjlesugq.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T10:14:48.000000Z",
            "updated_at": "2025-09-10T10:14:48.000000Z",
            "deleted_at": null
        },
        {
            "id": 96,
            "uuid": "9e5648dd-52e9-484b-b973-7a84c99a7ab0",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Suv",
            "model": "2020 Rav4 Adventure Edition",
            "fee": 50000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Fresh arrival, clean inside and out with no issues. Adventure trim, giving you rugged styling, top comfort, and advanced features. Smooth engine and gear, neat interior, factory AC cooling, and modern tech features. Strong suspension and ready for any terrain.\\n\\nPerfect for those who want reliability, style, and performance in one package.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757498973/d4xjj8m0rrnj0megkfk6.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757498974/fppxfeeh144vje3jl6xf.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757498976/jfnj1fh1icqyjdzbcvzh.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757498977/bdddmoxwvdspdyefk40q.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757498978/ykjwkpfyiltdxn90i9pg.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757498980/b3gmej5px2woosuzphjn.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757498982/nis4qekloufuxjlkx5lp.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T10:08:53.000000Z",
            "updated_at": "2025-09-10T10:08:53.000000Z",
            "deleted_at": null
        },
        {
            "id": 95,
            "uuid": "a9049bae-4ff6-4b5d-907f-a2dcf756e113",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "All Model",
            "fee": 14000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Eagle fuel pump for all car model. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757496094/aivpeu7u3kzcipo5668s.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T09:20:43.000000Z",
            "updated_at": "2025-09-10T09:20:43.000000Z",
            "deleted_at": null
        },
        {
            "id": 94,
            "uuid": "6217514d-9cab-42de-949b-d2fdb0e17b2a",
            "category": "Parts",
            "brand": "Nissan",
            "type": "Sedan",
            "model": "1999 To 2008 Micra",
            "fee": 5500,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Super fit Brake pad for Nissan micra. All year model \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757496007/hplrzijyt36yfxkhecgc.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T09:19:16.000000Z",
            "updated_at": "2025-09-10T09:19:16.000000Z",
            "deleted_at": null
        },
        {
            "id": 93,
            "uuid": "34e97970-6b16-415a-ba0e-355a0809b825",
            "category": "Parts",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2003 To 2009 Camry",
            "fee": 7000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Super fit Brake pad for Toyota Camry and Lexus ES models \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757495915/nslsom3f90brfpektvw4.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-10T09:17:44.000000Z",
            "updated_at": "2025-09-10T09:17:44.000000Z",
            "deleted_at": null
        },
        {
            "id": 92,
            "uuid": "2d3bc707-2df1-4173-b50f-ee03e5225416",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2013 Camry Le",
            "fee": 14000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Premium quality foreign used spider available for new owner. Car is spotless and in top condition. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444996/xaimoxvsemwrsnkl3s2i.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444997/ypyvclc9cnnorwi4xffm.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444998/dzytrp5fzvuey7vrkmjo.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444999/pigbgj0kjug2obqaezw3.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757445000/gbevtvohrjkuszpaddik.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757445001/fqmjz7f1cohwboyz7wqw.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757445002/hu5ozqpfyavygduqkmuq.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757445003/lwnwnqrmmt3fywn5xsht.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T19:09:12.000000Z",
            "updated_at": "2025-09-09T19:09:12.000000Z",
            "deleted_at": null
        },
        {
            "id": 91,
            "uuid": "14dd9792-13e5-4e12-a15f-1879bc075d4f",
            "category": "Sales",
            "brand": "Lexus",
            "type": "Suv",
            "model": "2013 Rx350",
            "fee": 27000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Clean foreign used rx350 available for new home. Sharp clean and healthy  \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444839/mrjl8pqqormojqp6puej.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444840/cxgm1gpxuu0d1ytr7yid.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444841/akzezqchq7ga9w5roxor.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444841/zcf4ulgqnvgbntchezzi.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444842/ylrwijfnr8omub2rhdpc.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444844/gwqa0vtgj364tnbtupkw.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444845/gyg6wkltqk42buk5na1r.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T19:06:34.000000Z",
            "updated_at": "2025-09-09T19:06:34.000000Z",
            "deleted_at": null
        },
        {
            "id": 90,
            "uuid": "a0180306-a4f2-4cb5-8ce7-82226cf96b70",
            "category": "Sales",
            "brand": "Ford",
            "type": "Suv",
            "model": "2013 Explorer",
            "fee": 15000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Foreign used explorer ready for new home. Clean and healthy like new. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444696/b5dh9jorjtvzr6csdzrm.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444697/dezqzxppeifpuex7we9g.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444698/ncsje0clakidadk5dxvn.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444700/lypcimtfljsiijrrc0ee.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444701/ovyjkti85jc4eshzhepw.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444703/jpzhdldruxpikcxajzyk.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444704/tja2tityqjx2vquy4stv.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444706/vbzebsq9olhgy7ahhot8.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444709/gds5yqaznlsyfmorge6r.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T19:04:19.000000Z",
            "updated_at": "2025-09-09T19:04:19.000000Z",
            "deleted_at": null
        },
        {
            "id": 89,
            "uuid": "4cb8cb89-2340-4bd0-b756-39dcaa547816",
            "category": "Sales",
            "brand": "Kia",
            "type": "Sedan",
            "model": "2019 Optima Sport",
            "fee": 19000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Foreign used optima in top condition. Complete duty paid,no dent no scratches. Absolute buy and drive. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444537/nvf2ti258sbtsxxiktfi.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444538/ekmp7bhntpitm5pqyxsb.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444540/png8yl1hssjgcitv3abo.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444541/tpiytqgbreexftnxj603.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444542/wdzmw9ype5momgoveind.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444543/y5l30neb5rllumyprxv5.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444544/yxyvruclx6v8lxu3u2lg.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444545/n2sjlarvcxhwgyfrqedz.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T19:01:34.000000Z",
            "updated_at": "2025-09-09T19:01:34.000000Z",
            "deleted_at": null
        },
        {
            "id": 88,
            "uuid": "a713e598-1fa8-43bd-b39d-6c15f42e1550",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2015 Avalon",
            "fee": 22500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"New entry limited Avalon with all components intact. Car is still and healthy like new. Ready for new garage. Get in touch. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444325/ulu0rna3etvcafjcjgmn.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444326/uqjwd4wltqlyacbqy1qv.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444328/om7kenxobb1z68kfesxw.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444329/hzmc1mljhkpi1zc0ef8d.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444330/spn04mb9bn9pyirpbwnm.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444332/rhyxsycpcup8jshmkgtg.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444333/jvpuqrlgtkighacyoz7v.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444334/fbvbfu751g93vkpsbljt.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444335/kzq6hvcm2qq21lzambvg.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:58:05.000000Z",
            "updated_at": "2025-09-09T18:58:05.000000Z",
            "deleted_at": null
        },
        {
            "id": 87,
            "uuid": "7b14632b-094c-48d7-b67a-84cc7acad289",
            "category": "Sales",
            "brand": "Mercedes_Benz",
            "type": "Sedan",
            "model": "2018 C300",
            "fee": 32500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Very sharp and clean  foreign used 2018 c300. Total accident free. Complete duty paid. Clean interior with Ac chilling. Absolute buy and drive condition. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444093/izrshicz1hpalkxjsqdj.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444094/mmlvwemsvtd0ofxvqnoi.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444095/lh9uqpc8uufxtecfn2zk.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444096/jjwe91didruomcodncjp.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444098/mno15oousckugucv1e8p.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444099/pxgda98eicyecfnvvjqq.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444099/mf2fmcrmvgqtwoytnurl.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757444100/azvowqlagzpgaxaxmkfh.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:54:10.000000Z",
            "updated_at": "2025-09-09T18:54:10.000000Z",
            "deleted_at": null
        },
        {
            "id": 86,
            "uuid": "d540e4a0-7fff-416d-a7ed-226f83ac4f44",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2014 Camry Sports",
            "fee": 15000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"New arrival 2014 Camry sport. Sharp clean and healthy. Total accident free with low mileage. Ac chilling. Good legs good tyres. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757443840/dl8w1welsewpzslee0eq.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757443841/zq7lfniw7tp5vxtihc4e.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757443842/stfw29zb5jqxwlj0ms4l.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757443843/l8xuno14gjyxma0x3kka.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757443844/cbdnr5gnnsrxyhch7h7c.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757443845/nllfst4sa0kafaccp16n.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757443846/mxtqu0j6i6okh0kpnjni.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:49:55.000000Z",
            "updated_at": "2025-09-09T18:49:55.000000Z",
            "deleted_at": null
        },
        {
            "id": 85,
            "uuid": "dbbc284b-8e6b-423e-b3b5-8dbcc7549319",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2013 Corolla Sport",
            "fee": 13500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Foreign used Toyota Corolla direct 2013\\nFirst body 💯 Accident free ✅\\n⛔️ *Engine is unscrewed (Factory fitted)*\\n⛔️ *Gear is working perfectly (Factory fitted)*\\n⛔️ *Ac is super chilling 🥶*\\n2025 On custom 📚  May entry✅\\nEverything are working perfectly 💯\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441923/gbyrgxpjdezqpr0pueub.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441924/x3smswqx3ditgy3i88ib.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441925/nbklzkcaiumryhttpw5l.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441926/tkf0pjyy9xqtorhystn7.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441927/lneeooee2omr9glyboip.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441928/ktoruiswjwa5qqn6mbff.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:17:57.000000Z",
            "updated_at": "2025-09-09T18:17:57.000000Z",
            "deleted_at": null
        },
        {
            "id": 84,
            "uuid": "e3f23c96-575a-47fb-8ed5-ec3455953811",
            "category": "Installation",
            "brand": "",
            "type": "",
            "model": "All Models",
            "fee": 300000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Fancy Tokunbo alloy rims, neat, durable and top condition. Price varies with type. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441658/fkwbqktynjdg2ijyhkoy.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441659/k7hexasjmjff8uqbz6xj.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:13:29.000000Z",
            "updated_at": "2025-09-09T18:13:29.000000Z",
            "deleted_at": null
        },
        {
            "id": 83,
            "uuid": "523ecee1-ad59-47b4-9da5-d7ca1228e69a",
            "category": "Consultation",
            "brand": "Lexus",
            "type": "Sedan",
            "model": "2008",
            "fee": 10000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Full scanning for Lexus es350\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441506/elczsioiqo3tihoxgoco.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:10:56.000000Z",
            "updated_at": "2025-09-09T18:10:56.000000Z",
            "deleted_at": null
        },
        {
            "id": 82,
            "uuid": "f2cef687-5826-4657-9773-3f054113529e",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "All Models",
            "fee": 60000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"All Tokunbo tyre sizes available for sale. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441421/a5ulcc9hm6s1qatmouak.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:09:31.000000Z",
            "updated_at": "2025-09-09T18:09:31.000000Z",
            "deleted_at": null
        },
        {
            "id": 81,
            "uuid": "a4ff8832-fd67-44fa-8225-77e229432148",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "All Models",
            "fee": 130000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Brand new tyre with all sizes available for sale. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441329/kyowxr749uqfdun4vfqa.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:07:59.000000Z",
            "updated_at": "2025-09-09T18:07:59.000000Z",
            "deleted_at": null
        },
        {
            "id": 80,
            "uuid": "15454d49-733c-462a-b4c6-97779bed46d9",
            "category": "Consultation",
            "brand": "Honda",
            "type": "Sedan",
            "model": "2022",
            "fee": 20000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Full car scanning for 2021 Honda Accord \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441224/eezhs4i5c8pmtwiugmyj.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:06:14.000000Z",
            "updated_at": "2025-09-09T18:06:14.000000Z",
            "deleted_at": null
        },
        {
            "id": 79,
            "uuid": "ab690b2b-6d3f-4b49-b8fb-8b63ecd0aa9a",
            "category": "Parts",
            "brand": "Hyundai",
            "type": "Sedan",
            "model": "2008 To 2011 Sonata",
            "fee": 1550000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo Hyundai sonata engines available for sale \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757441083/mrelqwjdp9lo8yxy6pli.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:03:53.000000Z",
            "updated_at": "2025-09-09T18:03:53.000000Z",
            "deleted_at": null
        },
        {
            "id": 78,
            "uuid": "f7a49e53-3d61-4d77-a70c-0d208202f366",
            "category": "Sales",
            "brand": "Honda",
            "type": "Sedan",
            "model": "2019 Accord",
            "fee": 28000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Foreign used Accord sport for sale. In top condition with high performance engine, clean in and out. Moscow standard ac. Rust free and absolute buy and drive. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440917/w1pjaylbu9bbciijdzr9.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440918/jvrhb5ketcz2tfip6eto.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440919/egadylrci4fc4zhalcvz.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440920/ad3xb6avoc5b2bkm78nn.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440922/mehscrxh3vizwt4p9qef.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440923/mrep5mld6zeheh77behf.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440925/oidoqfbxbdg93xeixqzy.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T18:01:14.000000Z",
            "updated_at": "2025-09-09T18:01:14.000000Z",
            "deleted_at": null
        },
        {
            "id": 77,
            "uuid": "f4e261e2-b7fc-431a-a24b-cd9bdb1bbe8a",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2004 Camry",
            "fee": 80000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Available for interstate travels and airport pickup or dropoff. Price differs with location \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440630/kngitgwumthqzpamndeo.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440632/fuzhnxvuxyhwl7s4v8vk.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440633/qt9tgbdqhml1rva1vlmv.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440634/yvw4hpeavvwqdgveqni4.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:56:24.000000Z",
            "updated_at": "2025-09-09T17:56:24.000000Z",
            "deleted_at": null
        },
        {
            "id": 76,
            "uuid": "f44d381f-a32b-4b4f-8c6b-fbcf16551a5b",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "All Models",
            "fee": 20000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Grade one Tokunbo absorber for all vehicles. Price varies with year and model type  \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440412/pdp4xmmit58ta0bataet.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:52:41.000000Z",
            "updated_at": "2025-09-09T17:52:41.000000Z",
            "deleted_at": null
        },
        {
            "id": 75,
            "uuid": "8d3b22d7-613a-4dd4-8d46-01ab18a5e7ed",
            "category": "Installation",
            "brand": "",
            "type": "",
            "model": "All Model",
            "fee": 15000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Fancy Car stickers and accessories available. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440320/fpkbmxoitj0juwxzkcs6.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440322/ydh8xsh7zsbq8j1ou9uz.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:51:12.000000Z",
            "updated_at": "2025-09-09T17:51:12.000000Z",
            "deleted_at": null
        },
        {
            "id": 74,
            "uuid": "33fdb86f-5a6e-42aa-bb26-005318e700d1",
            "category": "Hire",
            "brand": "Honda",
            "type": "Sedan",
            "model": "2000",
            "fee": 100000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Available for hire services within ibadan and interstate travels \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440211/kdayet5sqxemvsml4baa.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440212/e31uynkhfws5jjughtdu.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440214/b3ym2liywrziskakcp1v.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440215/top2xi1fmtndwbrlxgjq.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:49:25.000000Z",
            "updated_at": "2025-09-09T17:49:25.000000Z",
            "deleted_at": null
        },
        {
            "id": 73,
            "uuid": "c61af306-c4e8-44a6-82c7-2a994e6bbfc1",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Minivan",
            "model": "2008 Sienna",
            "fee": 6500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Toks standard 2008 sienna LE with very clean interior with first body paint, chilling ac, power booth, reverse camera. Untampered engine and gear. Absolute buy and drive condition \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440065/kvrq6hf7uuqglm40syyj.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440066/uo8nfhv5afm53tskmfe8.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440067/trlyi9awltrff0zhtuhy.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440069/htzuasxo5wapeus0ivns.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757440070/jlx0wlxqqoqeanhehxr2.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:47:00.000000Z",
            "updated_at": "2025-09-09T17:47:00.000000Z",
            "deleted_at": null
        },
        {
            "id": 72,
            "uuid": "b0cf2c0b-b046-4401-986e-53667c204c8b",
            "category": "Repair",
            "brand": "Toyota",
            "type": "Suv",
            "model": "2007 Highlander",
            "fee": 15000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Injector cleaning and servicing. Price varies with year,model type and fault noticed. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757438830/epw3nujeq1dfipqypore.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:26:20.000000Z",
            "updated_at": "2025-09-09T17:26:20.000000Z",
            "deleted_at": null
        },
        {
            "id": 71,
            "uuid": "3d92d2aa-5265-4fae-b274-913a854c0b20",
            "category": "Repair",
            "brand": "Mercedes_Benz",
            "type": "Sedan",
            "model": "E350",
            "fee": 15000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Call for proper car repair services \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757438652/avcdu74mbg2s5pflyh3v.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:23:22.000000Z",
            "updated_at": "2025-09-09T17:23:22.000000Z",
            "deleted_at": null
        },
        {
            "id": 70,
            "uuid": "9a9fe87a-3d60-43de-81c1-628df1120a8a",
            "category": "Installation",
            "brand": "Hyundai",
            "type": "All",
            "model": "All Models",
            "fee": 150000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Hyundai extra car key installation. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757438502/stsu6dyuegcierm29s6v.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:20:52.000000Z",
            "updated_at": "2025-09-09T17:20:52.000000Z",
            "deleted_at": null
        },
        {
            "id": 69,
            "uuid": "7823700c-2eed-46c2-98ff-aec35f37755a",
            "category": "Repair",
            "brand": "",
            "type": "",
            "model": "All Models",
            "fee": 100000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"We specialize in fixing leaking AC evaporators and expert dashboard refitting. Our technicians ensure your air conditioning system is fully restored while keeping your dashboard neat and perfectly aligned. Price differs with model type and year \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757438276/jwwg5kss66wntgfjerrq.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757438277/bmt57ftbyajzqo5lxrxu.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:17:07.000000Z",
            "updated_at": "2025-09-09T17:17:07.000000Z",
            "deleted_at": null
        },
        {
            "id": 68,
            "uuid": "4cad383f-c046-42c1-8b11-17aedfb0a9d8",
            "category": "Consultation",
            "brand": "Lexus",
            "type": "All",
            "model": "All Models",
            "fee": 15000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Get expert care for your Lexus with our specialized consultation and diagnostic scanning. We provide accurate fault detection, performance checks, and tailored solutions to keep your vehicle running at its best. Price varies with model type and year. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757438068/hkpw8p5qd2kgghlg2smn.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:13:37.000000Z",
            "updated_at": "2025-09-09T17:13:37.000000Z",
            "deleted_at": null
        },
        {
            "id": 67,
            "uuid": "22b15ad9-59d2-4440-a1fb-55cfbfe488bc",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "2010 To 2017",
            "fee": 1500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"2AR direct Tokunbo engines available for sale. Price is negotiable. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757437872/blxamkmjnv69xkn6hvpr.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757437873/qalmu75vsbxis9lepcck.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T17:10:23.000000Z",
            "updated_at": "2025-09-09T17:10:23.000000Z",
            "deleted_at": null
        },
        {
            "id": 66,
            "uuid": "ebcc0fee-2605-404b-bc5f-02387263a123",
            "category": "Repair",
            "brand": "",
            "type": "",
            "model": "All Model",
            "fee": 10000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Book your oil change and service today – your car deserves the best care!\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757436863/cdb0ldmv1stm5vfprzkv.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757436864/v8kvfxxt5poiofpauvqx.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T16:53:34.000000Z",
            "updated_at": "2025-09-09T16:53:34.000000Z",
            "deleted_at": null
        },
        {
            "id": 65,
            "uuid": "0aef859f-f80f-45eb-b47a-bc91e7365cd1",
            "category": "Repair",
            "brand": "",
            "type": "",
            "model": "2013 Toyota Corolla Sports",
            "fee": 500000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Bring your Car back to perfect shape with our professional reassembly service. Whether after accident repair, major maintenance, or part replacement, we carefully rebuild and refit every component to factory standard. Price differ with year and model type.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757436586/qdqzz2rtyc5zz8l9hepj.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757436587/vusufa2xgfp0rxizxkng.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757436588/gktcow4zqourmp0ihhuu.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757436589/xi4u9s9cup66bagbuxhb.jpg"
            ],
            "status": "unavailable",
            "created_at": "2025-09-09T16:48:59.000000Z",
            "updated_at": "2025-09-09T16:48:59.000000Z",
            "deleted_at": null
        },
        {
            "id": 63,
            "uuid": "e17a4c18-430c-4ccc-b4f5-f984cfc1dddc",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2005 And Newer",
            "fee": 10000000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Now taking preorders for clean Tokunbo cars from 2005 models and newer. Wide selection of Toyota, Lexus, Honda, and more—direct import, neatly used, and in excellent condition. Secure your choice today for reliable, high-quality vehicles at the best value. Price differs with year and model type \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757434942/vtvc7m5nroeohcetdib5.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T16:21:32.000000Z",
            "updated_at": "2025-09-09T16:21:32.000000Z",
            "deleted_at": null
        },
        {
            "id": 62,
            "uuid": "5fae344a-908d-4ee4-a8e2-d8229fc93a2c",
            "category": "Repair",
            "brand": "All",
            "type": "Sedan",
            "model": "2008 To 2024 Lexus And Toyota Smart Key Replacement.",
            "fee": 1200000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Smart key replacement and programming available for Lexus and Toyota models (2008–2024). Neat and reliable sensor keys with perfect compatibility for push-to-start and keyless entry.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757434491/sjker4nhvzbbcadladmq.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T16:14:01.000000Z",
            "updated_at": "2025-09-09T16:14:01.000000Z",
            "deleted_at": null
        },
        {
            "id": 60,
            "uuid": "d09618bf-4e82-479e-b7c8-ed6437f2f6f8",
            "category": "Consultation",
            "brand": "",
            "type": "",
            "model": "All Model Consultation And Vehicle Diagnostics And Scanning Services Advertisement",
            "fee": 15000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Professional consultation and vehicle diagnostics services available for all car models. Advanced scanning tools to detect engine, gearbox, ABS, airbag, and electrical issues. Quick, accurate, and reliable checks to keep your car in top condition. Perfect for Toyota, Lexus, Honda, and other brands.\\nPrices differs from year,model type and location \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757433813/tc2f7fdwedfv9bktekgx.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T16:02:43.000000Z",
            "updated_at": "2025-09-09T16:02:43.000000Z",
            "deleted_at": null
        },
        {
            "id": 59,
            "uuid": "d8eb6b77-8a9e-471b-8de6-dd439f7947ac",
            "category": "Consultation",
            "brand": "",
            "type": "",
            "model": "2005 And Newer Models Consultation And Vehicle Diagnostics And Scanning",
            "fee": 15000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Professional consultation and vehicle diagnostics services available for all car models. Advanced scanning tools to detect engine, gearbox, ABS, airbag, and electrical issues. Quick, accurate, and reliable checks to keep your car in top condition. Perfect for Toyota, Lexus, Honda, and other brands.( Price varies with year,model and car location)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757433706/ffccof3lhjmpki4jf82y.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T16:00:56.000000Z",
            "updated_at": "2025-09-09T16:00:56.000000Z",
            "deleted_at": null
        },
        {
            "id": 58,
            "uuid": "76211827-4d39-4b4c-8f00-7e77caa08b34",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "All Model Tokunbo Car Tyre Sizes",
            "fee": 30000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Wide range of clean Tokunbo car tyres available for all models — durable, balanced, and long-lasting for smooth driving. Different sizes in stock, including **215/55R17, 225/65R17, 205/60R16, 245/45R19**, and more. Perfect fit for Toyota, Lexus, Honda, and other brands.\\n(Price varies with sizes and grade. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757432488/va7m6mcetszxpbjnctfs.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T15:40:38.000000Z",
            "updated_at": "2025-09-09T15:40:38.000000Z",
            "deleted_at": null
        },
        {
            "id": 57,
            "uuid": "0675b92a-9831-43f0-92e1-40592316c731",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "2004 To 2024 Toyota Camry Shock Absorber",
            "fee": 15000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Strong and durable Tokunbo shock absorbers available for Toyota Camry 2004–2024 models. Provides smooth ride, stability, and comfort on all roads. Perfect replacement with original quality for long-lasting performance.\\n(Price ranges with year and model type)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757431968/tcfqqs7wjygwnkj2ki0j.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T15:31:58.000000Z",
            "updated_at": "2025-09-09T15:31:58.000000Z",
            "deleted_at": null
        },
        {
            "id": 56,
            "uuid": "152dca46-4741-4d91-b929-0cf23d1b9a0f",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "2003 To 2024 Toyota Highlander Mirror",
            "fee": 30000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Clean Tokunbo side mirrors available for Toyota Highlander 2003–2024 models. Durable and original with perfect fit, providing clear visibility and reliable performance. Ideal replacement to keep your SUV looking neat and functional. (Price varies with year and model type)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757431713/dven1v0e2dsk0dmmt8ni.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T15:27:42.000000Z",
            "updated_at": "2025-09-09T15:27:42.000000Z",
            "deleted_at": null
        },
        {
            "id": 55,
            "uuid": "a7cd578f-26c1-4632-a34e-cbcfc37f0246",
            "category": "Sales",
            "brand": "",
            "type": "",
            "model": "2005 To Newer Car Preorders",
            "fee": 10000000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Now taking preorders for clean Tokunbo cars from 2005 models and newer. Wide selection of Toyota, Lexus, Honda, and more—direct import, neatly used, and in excellent condition. Secure your choice today for reliable, high-quality vehicles at the best value.( Price varies with year and model type)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757430789/leyht6mn5hlkwbgcpham.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T15:12:19.000000Z",
            "updated_at": "2025-09-09T15:12:19.000000Z",
            "deleted_at": null
        },
        {
            "id": 54,
            "uuid": "d0b8176d-090c-43c1-bf8d-fe5944d6d953",
            "category": "Repair",
            "brand": "Lexus",
            "type": "Suv",
            "model": "2006 To 2024 Abs Sensor And Abs Light Correction",
            "fee": 30000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Reliable ABS sensors and ABS light correction service available for Toyota, Lexus, Honda, and more (2006–2024 models). Ensures proper braking system performance, restores safety, and clears dashboard warning lights. Durable parts and professional fixing for smooth, safe driving.(Price varies with car year and model type)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757430500/wgb1giyo9xmiwttbgjny.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757430502/omtijyyqkxzweofi7mhs.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757430503/oiavqekbowozjivd1xvq.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T15:07:32.000000Z",
            "updated_at": "2025-09-09T15:07:32.000000Z",
            "deleted_at": null
        },
        {
            "id": 53,
            "uuid": "a023c2ab-ef3c-4380-80fb-f35dec66acc2",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "2010 To 2018 Rx350 Spare Key Or Replacement",
            "fee": 140000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Spare and replacement keys available for Lexus RX350 (2010–2018). Neat and reliable, programmed to fit perfectly for smooth usage. Ideal solution for lost, damaged, or extra key needs.( Price varies on year and model type)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757430145/qgx4mvzszetqlytm2mga.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T15:01:35.000000Z",
            "updated_at": "2025-09-09T15:01:35.000000Z",
            "deleted_at": null
        },
        {
            "id": 52,
            "uuid": "36ea13e3-7096-46a8-a3f6-fdf1063e80ea",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "2000 To 2024 Neat Tokunbo Side Fenders",
            "fee": 50000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Neat Tokunbo side fenders available for Toyota, Lexus, Honda, and more, covering models from 2000 to 2024. Clean and durable, perfect fit for replacement with original quality. Strong, reliable, and ready to give your car a fresh look.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757428702/x31gy0iwmwzgftqac9wr.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757428704/nut1vlhw3ccdtbf8lstt.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T14:37:34.000000Z",
            "updated_at": "2025-09-09T14:37:34.000000Z",
            "deleted_at": null
        },
        {
            "id": 51,
            "uuid": "47a21569-a900-4568-9c16-3d91b66a09aa",
            "category": "Repair",
            "brand": "",
            "type": "",
            "model": "All Models",
            "fee": 2000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Professional wheel alignment and balancing service available to keep your car running smoothly. Ensures even tire wear, better fuel efficiency, improved handling, and safer driving. Quick, reliable, and handled with modern equipment for the best results. Perfect for all car models.\\n\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757428099/cgwvh0u46cstgxjzptvg.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T14:27:29.000000Z",
            "updated_at": "2025-09-09T14:27:29.000000Z",
            "deleted_at": null
        },
        {
            "id": 50,
            "uuid": "15ff09ba-01d3-4859-a0d5-8cf952cc2359",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Available Different Kind Of Toyota And Honda Engines And Gearbox's",
            "fee": 100000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Wide range of clean Tokunbo Toyota and Honda engines and gearboxes available. Strong, durable, and reliable options for different models, including 4-cylinder and V6. Perfect replacements to keep your car running smoothly.\\n*Note* prices varies by type of model \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757423752/vj9s658syfw09fdwjo91.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T13:15:02.000000Z",
            "updated_at": "2025-09-09T13:15:02.000000Z",
            "deleted_at": null
        },
        {
            "id": 49,
            "uuid": "937cdee8-77f0-4db5-bf0a-cf3c9d8ed31b",
            "category": "Hire",
            "brand": "Toyota",
            "type": "Van",
            "model": "Toyota Coaster Bus",
            "fee": 150000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Clean and spacious Toyota Coaster bus available for hire, ideal for group trips, weddings, church programs, staff transportation, and events. Comfortable 30-seater capacity with reliable performance and smooth ride. Perfect choice for safe and convenient travel. Escort available on request. *Please note* Hire service price varies per location. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757423361/amb1iv5xpdesimhqvsel.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757423362/rmu8e2ip1nnb0jxum9id.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757423363/z3v5udhx5slbwz8hpl2c.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757423364/fiwuouwthxx7fed16wuf.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757423364/c4tpc2h5ohymkrgeedxg.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757423365/mgg3ibwgc2agqkhabr82.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T13:08:36.000000Z",
            "updated_at": "2025-09-09T13:08:36.000000Z",
            "deleted_at": null
        },
        {
            "id": 48,
            "uuid": "3578f94b-f898-45e2-9d08-bf6705981800",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Corolla Engine 2000-2007",
            "fee": 1200000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo Toyota Corolla engine (2000–2007), 4-cylinder, fuel efficient and reliable. Clean and durable, delivers smooth performance and long-lasting power. Perfect replacement option for Corolla models within this range.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757422665/vu1dcxqt21ya2sjcvfut.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:56:55.000000Z",
            "updated_at": "2025-09-09T12:56:55.000000Z",
            "deleted_at": null
        },
        {
            "id": 47,
            "uuid": "5b1f049d-83bf-4e30-9cea-3b1fe059a789",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "V6 22Pin Gearbox",
            "fee": 2000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Here are the main car models that use the Tokunbo V6 gearbox:\\n\\nToyota models\\n\\nToyota Camry V6 (2007–2011)\\n\\nToyota Avalon (2005–2012)\\n\\nToyota Sienna (2007–2016)\\n\\nToyota Highlander V6 (2008–2019)\\n\\nToyota RAV4 V6 (2006–2012)\\n\\nLexus models\\n\\nLexus ES350 (2007–2015)\\n\\nLexus RX350 (2007–2015)\\n\\nLexus IS350 (2006–2015)\\n\\nLexus GS350 (2006–2015)\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757422540/gei7trohytelip50xo3d.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:54:50.000000Z",
            "updated_at": "2025-09-09T12:54:50.000000Z",
            "deleted_at": null
        },
        {
            "id": 46,
            "uuid": "8d2b9c98-f7b6-47d3-9779-9f90fd4721f4",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Tokunbo 2Gr Engine For Toyota And Lexus",
            "fee": 1500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo 2GR engine, 3.5L V6, powerful and reliable for top performance. Perfect fit for Toyota Camry V6 (2007–2011), Avalon (2005–2012), Sienna (2007–2016), Highlander (2008–2019), and RAV4 V6 (2006–2012). Also compatible with Lexus ES350 (2007–2015), RX350 (2007–2015), IS350 (2006–2015), and GS350 (2006–2015). Strong, durable, and in excellent condition.\",\"value\":\"\"},{\"title\":\"Slightly negotiable. \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757421913/e6rwzgs4cwnpixret39b.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:44:23.000000Z",
            "updated_at": "2025-09-09T12:44:23.000000Z",
            "deleted_at": null
        },
        {
            "id": 45,
            "uuid": "ee52b4ae-dbc7-4b99-84c3-d1d6b5ef3325",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Fourplug 22Pin Gearbox",
            "fee": 1700000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo 4-plug 22-pin gearbox, reliable and efficient for smooth driving performance. Perfect fit for Toyota Camry 2007–2011 (2.4L), Toyota RAV4 2006–2010 (2.4L), and selected Lexus ES models. Strong, durable, and ready for use.\\n\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757421657/di17d1vr6vqcprmkngdc.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:40:07.000000Z",
            "updated_at": "2025-09-09T12:40:07.000000Z",
            "deleted_at": null
        },
        {
            "id": 44,
            "uuid": "9fbf1bba-8ac0-4839-a560-9fd6a05a668c",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Lexus Is 250,350 Gearbox",
            "fee": 900000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo Lexus IS250/IS350 gearbox, strong and reliable with smooth performance.\\n\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757421468/zftvsupiedpeareietyd.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:36:58.000000Z",
            "updated_at": "2025-09-09T12:36:58.000000Z",
            "deleted_at": null
        },
        {
            "id": 43,
            "uuid": "f9272a55-c593-4ff1-afcf-0ccf7adbed8e",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Corolla 5Pin Gearbox",
            "fee": 650000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Condition \",\"value\":\"Excellent \"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757421365/xdmayssvdkpghjbe0xul.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:35:16.000000Z",
            "updated_at": "2025-09-09T12:35:16.000000Z",
            "deleted_at": null
        },
        {
            "id": 42,
            "uuid": "fbfef3ad-b61c-444d-9a95-a3c5144fd9ad",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Sea Horse 4Litre",
            "fee": 15000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Sea Horse premium engine oil,reliable for optimal engine performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757420510/lpzkxwthc0jkcygdg7fz.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:21:00.000000Z",
            "updated_at": "2025-09-09T12:21:00.000000Z",
            "deleted_at": null
        },
        {
            "id": 41,
            "uuid": "dcc4ba8b-3428-4be6-aeec-59c27cd9eebf",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "3Mz Engine \nFor Toyotas And Lexus",
            "fee": 1300000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo 3MZ engine, suitable for Toyota and Lexus models. Powerful, reliable, and in excellent working condition.\\n\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757420331/rcnwie4jphiuon0sybad.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:18:01.000000Z",
            "updated_at": "2025-09-09T12:18:01.000000Z",
            "deleted_at": null
        },
        {
            "id": 40,
            "uuid": "3a2722e1-855f-427b-8424-94a24d372809",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Brake Pad For Toyota Camry,Rav4,Highlander And Others",
            "fee": 7000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Super fit Brake pad \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757419885/gpwhrudtcweqzx3pq6em.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:10:35.000000Z",
            "updated_at": "2025-09-09T12:10:35.000000Z",
            "deleted_at": null
        },
        {
            "id": 39,
            "uuid": "b0baabdd-e76a-48cf-9187-293e7368cd86",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Tokunbo Power Steering Pump \nFor Camry,Lexus,Rav4, Corolla.",
            "fee": 70000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo power steering pump, compatible with Toyota Camry, Corolla, RAV4, and Lexus. Strong and reliable performance.\\n\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757419378/hrizlm0zint9okgggn8e.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T12:02:08.000000Z",
            "updated_at": "2025-09-09T12:02:08.000000Z",
            "deleted_at": null
        },
        {
            "id": 38,
            "uuid": "8a950f5c-0a80-47b9-b4de-07cd95a4d3b9",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "2Az Engine For Toyota Camry 2003 To 2009",
            "fee": 1300000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo 2AZ engine, suitable for Toyota Camry 2003–2009. Strong, reliable and in good condition.\\n\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757418937/x0ozljuhanjgrsefmmhh.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T11:54:47.000000Z",
            "updated_at": "2025-09-09T11:54:47.000000Z",
            "deleted_at": null
        },
        {
            "id": 37,
            "uuid": "44ed145d-b4b6-4730-9df9-e499f97fafcc",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Tokunbo Kick Starter For Toyota Corolla 1999 To 2007",
            "fee": 38000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo kick starter, perfect fit for Toyota Corolla 1999–2007. Strong and reliable performance.\\n\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757418556/wpqxbyuruumewgvhixsq.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T11:48:26.000000Z",
            "updated_at": "2025-09-09T11:48:26.000000Z",
            "deleted_at": null
        },
        {
            "id": 36,
            "uuid": "33936313-ad12-4ee2-b4ad-4cb62e0181c2",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Kick Starter For Toyota Camry,Sienna,Lexus And More",
            "fee": 40000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Durable kick starter, reliable fit for Toyota Camry, Sienna, Lexus, and other compatible models. Ensures smooth and efficient engine start.\\n\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757417975/pgqnvbrhajlez7dxowzu.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-09T11:38:46.000000Z",
            "updated_at": "2025-09-09T11:38:46.000000Z",
            "deleted_at": null
        },
        {
            "id": 35,
            "uuid": "704f6945-2647-415f-b4ab-cce488cb1856",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2014 Camry",
            "fee": 14500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo 2014 Toyota Camry SE with reverse camera, new entry, total duty paid,clean in and out.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757335099/kd9az1wog3ppfbd2gwup.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757335100/xysusohzwwcdocg2e1rf.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757335101/nv52ckgn9btxzdtr1ipo.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757335102/i1zavlqurwcsddeqabno.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757335103/xhg4io3khpy4tmmqv03k.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757335104/b09zum8g9so4lchiuiun.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-08T12:37:36.000000Z",
            "updated_at": "2025-09-08T12:37:36.000000Z",
            "deleted_at": null
        },
        {
            "id": 34,
            "uuid": "a2ff3b9f-0ba0-43f4-b115-f88d3ca7b909",
            "category": "Sales",
            "brand": "Lexus",
            "type": "Suv",
            "model": "Rx330",
            "fee": 14000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo 2006 Lexus rx330\\nFull options, buy and drive condition \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334835/mvf2a4eiaapkvyuc3o2q.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334836/qrmexda7nac8vzxht9ew.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334838/qlshgo8oz1afkacbfejh.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334839/pf59xekvrsjdewdcj1iw.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334840/zgubdetn6ixzysvtfswg.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334841/kitx8g7mutixqiyhmhxz.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334843/p4ctfislweh0kujcqhpt.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-08T12:33:14.000000Z",
            "updated_at": "2025-09-08T12:33:14.000000Z",
            "deleted_at": null
        },
        {
            "id": 33,
            "uuid": "48705e62-5e58-4a65-b25c-be50bf477024",
            "category": "Sales",
            "brand": "Lexus",
            "type": "Suv",
            "model": "Rx350",
            "fee": 14000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Tokunbo 2008 rx350,absolute nothing to fix \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334710/aoqqxn8qmisvxyy8cpld.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334711/gb25otum2lbrmshoxwrk.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334712/ucqcuew57eystqw8sbnh.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334713/rqaumaf357nzpmr17o0h.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334715/p6nz8ytad8ocptncapbx.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1757334715/bh82uj2dcrh6hdhybn07.jpg"
            ],
            "status": "available",
            "created_at": "2025-09-08T12:31:07.000000Z",
            "updated_at": "2025-09-08T12:31:07.000000Z",
            "deleted_at": null
        },
        {
            "id": 7,
            "uuid": "772db59e-3dd5-4b28-9004-3f370410d41e",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Polar Alva Oil",
            "fee": 15700,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Polar Alva 5000XP 20W-50 Extra High Performance Multigrade Oil 5L – Advanced engine oil that delivers strong protection, reduced wear, and reliable performance for high-demand engines.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756643768/iy3kbedb9zasfkkmfgyo.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T12:35:29.000000Z",
            "updated_at": "2025-08-31T12:35:29.000000Z",
            "deleted_at": null
        },
        {
            "id": 6,
            "uuid": "24f2b1a5-ea31-406a-98d8-14ea160aeac4",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Automatic Transmission Fluid",
            "fee": 17000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Toyota ATF Type T-IV  4L– Genuine Toyota automatic transmission fluid specially formulated for smooth shifting, reliable performance, and enhanced transmission protection.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756643515/rmriavzofyulnzzy2vhf.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T12:31:16.000000Z",
            "updated_at": "2025-08-31T12:31:16.000000Z",
            "deleted_at": null
        },
        {
            "id": 5,
            "uuid": "4af980c8-1861-453b-9846-2e419034d32c",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Super Gold Lubricant",
            "fee": 11000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Super Gold Lubricant ATF Dexron III D 4L – High-quality automatic transmission fluid that provides smooth gear shifts, dependable lubrication, and lasting protection.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756643156/twgnxi27keaqjydjp5j0.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T12:25:18.000000Z",
            "updated_at": "2025-08-31T12:25:18.000000Z",
            "deleted_at": null
        },
        {
            "id": 4,
            "uuid": "00d206e9-eec8-4ba3-a6da-1ca06860af08",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Automatic Transmission Fluid",
            "fee": 6000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Toyota WS AT Fluid 1L – Genuine automatic transmission fluid engineered for Toyota vehicles, ensuring smooth shifting, reliable performance, and long-lasting protection.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756642602/ggkhatxoyrwvtsiz72qd.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T12:16:03.000000Z",
            "updated_at": "2025-08-31T12:16:03.000000Z",
            "deleted_at": null
        },
        {
            "id": 3,
            "uuid": "862a337f-3716-4b8f-806b-37e3732d6e4e",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Lubcon Adrenalin Oil",
            "fee": 17800,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Lubcon Adrenalin 20W-50 Premium Multigrade Lubricant 5L – High-quality oil formulated for both turbo and non-turbo engines, delivering strong protection, reduced wear, and reliable performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756642163/xbuernajfjs7lzmr72qd.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T12:08:44.000000Z",
            "updated_at": "2025-08-31T12:08:44.000000Z",
            "deleted_at": null
        },
        {
            "id": 2,
            "uuid": "ce468057-761c-4666-b5ee-f80127f591f1",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Golden Super Oil",
            "fee": 15000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Conoil Golden Super Motor Oil SAE 40 4L – Reliable monograde oil that provides solid engine protection, reduced wear, and smooth performance for petrol and diesel engines.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756641863/zawtvm1o565ixzyca0mk.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T12:03:44.000000Z",
            "updated_at": "2025-08-31T12:03:44.000000Z",
            "deleted_at": null
        },
        {
            "id": 31,
            "uuid": "50ef8592-f317-48d0-8673-e369b6c82f14",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Ammasco Vital 2000Sl",
            "fee": 17500,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Ammasco Vital 2000SL Extra High Performance Multigrade Oil 5L – Premium engine oil that offers strong protection, cleaner engine performance, and reliable durability for modern engines.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756641717/m6vkw8exwfr6bv6iiw1y.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T12:01:18.000000Z",
            "updated_at": "2025-08-31T12:01:18.000000Z",
            "deleted_at": null
        },
        {
            "id": 25,
            "uuid": "2dabee3e-1446-4992-ac4d-7d792642c4a2",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Golden Super Oil",
            "fee": 4000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Conoil Golden Super Motor Oil SAE 40 1L – Quality monograde oil that delivers dependable protection and smooth performance for petrol and diesel engines.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756641543/hl6xnkwds9sjyxrmbehl.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T11:58:24.000000Z",
            "updated_at": "2025-08-31T11:58:24.000000Z",
            "deleted_at": null
        },
        {
            "id": 24,
            "uuid": "7fc26ada-3448-4ea0-b95f-592de6c86f03",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Automatic Transmission Fluid Dexron-Ii",
            "fee": 4200,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"NNPC ATF Dexron II 1L – Automatic transmission and power steering fluid that provides smooth shifting, reliable lubrication, and long-lasting system protection.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756641348/kmqlclkyxrewkhxxwtgi.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T11:55:09.000000Z",
            "updated_at": "2025-08-31T11:55:09.000000Z",
            "deleted_at": null
        },
        {
            "id": 23,
            "uuid": "f0616407-542b-433b-806d-457f4fd2ef23",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Polar Elite Oil",
            "fee": 12500,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Polar Elite Petrol Engine SAE 50 4L – Extra high-performance oil that ensures strong protection, reduced wear, and reliable performance for petrol engines.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756641170/joels27gdyffp6ossdhf.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T11:52:11.000000Z",
            "updated_at": "2025-08-31T11:52:11.000000Z",
            "deleted_at": null
        },
        {
            "id": 22,
            "uuid": "df022dfa-83b5-447b-ae07-8797c84b19f8",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Mobil Special Oil",
            "fee": 18000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Mobil Special 20W-50 High Performance Motor Oil 4L – Durable motor oil that provides strong protection, reduces wear, and supports reliable engine performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756640944/sq4imqzrhzjvto2xh2nf.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T11:48:25.000000Z",
            "updated_at": "2025-08-31T11:48:25.000000Z",
            "deleted_at": null
        },
        {
            "id": 21,
            "uuid": "8004f86f-f2e7-4d43-a72b-f1a7cf8423aa",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Mobil Special Oil",
            "fee": 4800,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Mobil Special 20W-50 High Performance Motor Oil 1L – Durable motor oil that provides strong protection, reduces wear, and supports reliable engine performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756640796/gz0l3emlmec2vvmw68tu.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T11:45:57.000000Z",
            "updated_at": "2025-08-31T11:45:57.000000Z",
            "deleted_at": null
        },
        {
            "id": 20,
            "uuid": "c79722bd-db26-4860-a82a-0557345d55c0",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Mobil 1 Fully Synthetic",
            "fee": 70000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Mobil 1 Extended Performance Advanced Full Synthetic Motor Oil 4.7L – High-quality synthetic oil designed for ultimate engine protection, longer drain intervals, and smooth performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756640181/afdfyx68ym3zz3swk3cf.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T11:35:42.000000Z",
            "updated_at": "2025-08-31T11:35:42.000000Z",
            "deleted_at": null
        },
        {
            "id": 19,
            "uuid": "24c9f00e-db0b-493f-ace8-3f3b83333539",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Mobil 1 Motor Oil",
            "fee": 15500,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Mobil 1 Extended Performance Advanced Full Synthetic Motor Oil 1L – Premium synthetic oil engineered for long-lasting protection, extended drain intervals, and maximum engine performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756638664/lqmxzfo65gnnu1jmn1uv.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T11:10:25.000000Z",
            "updated_at": "2025-08-31T11:10:25.000000Z",
            "deleted_at": null
        },
        {
            "id": 18,
            "uuid": "a219a828-5dab-4e4b-98d8-36fbc3de8b1f",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Total Classic Oil",
            "fee": 5000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Total Classic 5 SF-CF SAE 40 1L – Monograde engine oil that delivers dependable protection and reliable performance for both petrol and diesel engines.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756638279/b8lcivhmrut6kn64qw1m.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T11:04:00.000000Z",
            "updated_at": "2025-08-31T11:04:00.000000Z",
            "deleted_at": null
        },
        {
            "id": 17,
            "uuid": "1401e77c-3934-41f7-b6a8-33aff74233da",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Oleum Super Crankcase Oil",
            "fee": 14200,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"NNPC Oleum Super SAE 40 Monograde Crankcase Oil 4L – Reliable engine oil for petrol and diesel engines, providing solid protection and dependable performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756638037/rwk2p8twx5gikrcmbrec.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T10:59:58.000000Z",
            "updated_at": "2025-08-31T10:59:58.000000Z",
            "deleted_at": null
        },
        {
            "id": 16,
            "uuid": "816b4a4b-cbf1-406f-b3cc-f77d95c2a2c3",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Oleum Super Crankcase Oil",
            "fee": 3900,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"NNPC Oleum Super SAE 40 Monograde Crankcase Oil 1L – Reliable engine oil for petrol and diesel engines, providing solid protection and dependable performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756636985/srhlgtr5vdposvta6mit.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T10:42:26.000000Z",
            "updated_at": "2025-08-31T10:42:26.000000Z",
            "deleted_at": null
        },
        {
            "id": 15,
            "uuid": "c8f85126-d660-4d20-b33f-eeefe061df02",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Mobil Super 1000 Engine Oil",
            "fee": 23500,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Mobil Super 1000 20W-50 Extra High Performance Engine Oil 5L – Mineral engine oil offering enhanced protection, reduced wear, and reliable performance for everyday driving.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756636497/wxw9i5ra7poo46j1smzl.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T10:34:19.000000Z",
            "updated_at": "2025-08-31T10:34:19.000000Z",
            "deleted_at": null
        },
        {
            "id": 14,
            "uuid": "fd428278-0cf6-40c6-9ccb-06bcc6402b1c",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Mobil Super 1000 Xhp Oil",
            "fee": 19000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Mobil Super 1000 20W-50 High Performance Engine Oil 4L – Quality mineral oil that provides dependable protection, reduces engine wear, and supports smooth everyday performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756633354/ctirgjpm7et8uevujqdu.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T09:41:55.000000Z",
            "updated_at": "2025-08-31T09:41:55.000000Z",
            "deleted_at": null
        },
        {
            "id": 13,
            "uuid": "8c3652ad-a10e-4552-a2ab-64a0a2b44f75",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Total Quartz Oil",
            "fee": 19000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Total Quartz 5000 SL 20W-50 4L – Durable engine oil that ensures reliable protection, reduced wear, and consistent performance for older and high-mileage engines.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756633082/ekmatmdxuifu1wrgeo2e.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T09:37:23.000000Z",
            "updated_at": "2025-08-31T09:37:23.000000Z",
            "deleted_at": null
        },
        {
            "id": 12,
            "uuid": "d87c67e7-3f8f-47e1-8f52-ec24d7aa1add",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Mobil Super 2000 Oil",
            "fee": 28000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Mobil Super 2000 Semi Synthetic Motor Oil 4L – Reliable engine oil that delivers strong protection, reduced wear, and smooth performance for everyday driving.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756632642/ckjkehumxbppixdfyrb6.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T09:30:03.000000Z",
            "updated_at": "2025-08-31T09:30:03.000000Z",
            "deleted_at": null
        },
        {
            "id": 11,
            "uuid": "c7bbd7c7-d8a9-4261-ae39-3e07fa98c2a8",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Hardex Gold Oil",
            "fee": 31000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Hardex Gold SAE 5W-30 Fully Synthetic Engine Oil 5L – Premium engine oil designed for maximum protection, improved fuel efficiency, and smooth engine performance.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756632449/js1eugmmtairqekzg7ch.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T09:26:50.000000Z",
            "updated_at": "2025-08-31T09:26:50.000000Z",
            "deleted_at": null
        },
        {
            "id": 10,
            "uuid": "14bdde8c-fb2e-4f7e-ad0c-b01a9dc482da",
            "category": "Parts",
            "brand": "",
            "type": "",
            "model": "Mobil Super 3000",
            "fee": 32500,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Mobil Super 3000 Full Synthetic Motor Oil 5L – High-performance engine oil that provides excellent protection, smooth performance, and long-lasting engine life.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756632220/lbgcxh7k2fyz0khchntp.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T09:23:02.000000Z",
            "updated_at": "2025-08-31T09:23:02.000000Z",
            "deleted_at": null
        },
        {
            "id": 9,
            "uuid": "7aef2892-b394-489f-805a-995c3d95e769",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "Camry Se 2014",
            "fee": 13000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"2014 model, very clean and sharp with reverse camera. Smooth drive, neat interior, chilling AC, and good fuel efficiency. Recent entry, nothing to fix — buy and drive.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599471/fa7vsushtd0nokp1ogfc.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599472/tnydzx1tfyl5rcxhugw9.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599474/yag7ox0zy4qjlasxxelw.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599475/sra4uqlfv69nadu5hnhf.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599476/o1qvowzm8sxymo8k7a0c.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599477/cp7ezsfznm56xd7g6soq.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T00:17:18.000000Z",
            "updated_at": "2025-08-31T00:17:18.000000Z",
            "deleted_at": null
        },
        {
            "id": 8,
            "uuid": "60930809-8550-4a66-982a-41d2a36454a6",
            "category": "Sales",
            "brand": "Lexus",
            "type": "Sedan",
            "model": "Is250 2014",
            "fee": 26000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"2014 model, recent entry, very clean inside and out. Smooth drive, powerful and reliable engine, luxury interior with leather seats, chilling AC, and modern features. Buy and drive, nothing to fix.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599287/fmhmhfop0czye9gwn0au.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599288/kgae4thogzf1igpk7iiv.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599289/van5fhfzeyjmsdpmy9y9.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599290/cbzpbnsw1mwi9nyo21lc.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599291/t7iv8u9t7zdrs8odddsi.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599292/seyi3ailtyipg3cbxjrl.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T00:14:14.000000Z",
            "updated_at": "2025-08-31T00:14:14.000000Z",
            "deleted_at": null
        },
        {
            "id": 32,
            "uuid": "476fd567-0967-4c52-b30a-e00c63dcd2d6",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "Camry Se 2013",
            "fee": 14500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"2013 model SE, clean and sharp with thumbstart. Smooth drive, fuel efficient, sporty look with neat interior and chilling AC. Well-maintained and ready to drive.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599020/av4bgvqhfqtsht7h41dh.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599021/oon3klzjkgdbeg8fbfv6.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599022/k0wgggdra2wlsrxfa9sl.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599024/mv1pbsrqgn1o0ijb1f8x.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599025/ttiay4pv1zqk0c78ry4b.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756599026/gp3hlgpdiw4i2nvydben.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T00:09:47.000000Z",
            "updated_at": "2025-08-31T00:09:47.000000Z",
            "deleted_at": null
        },
        {
            "id": 30,
            "uuid": "a16e1117-df81-4e3d-bfd3-2333c9b35075",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Suv",
            "model": "Rav4 Le 2010",
            "fee": 13500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"2010 model, very neat and well-maintained. Smooth drive, good fuel economy, spacious interior with chilling AC. Reliable and ready to hit the road — buy and drive.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598524/h1fep3rl31plk2al6602.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598526/iealxluislceg4jyy7fo.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598527/d28tjm1q9rmt8dkf51ci.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598528/jweqjzpvnsxzez1jptwg.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-31T00:01:30.000000Z",
            "updated_at": "2025-08-31T00:01:30.000000Z",
            "deleted_at": null
        },
        {
            "id": 29,
            "uuid": "4134d41c-af6b-4e86-974c-622d0bfa2d7f",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Suv",
            "model": "Venza Xle 2012",
            "fee": 17000000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"2012 XLE, 4-plug engine, very clean and sharp. Strong engine, good fuel economy, smooth drive with comfortable interior. Buy and drive, nothing to fix.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598119/pyssb4tzsnmksbs5aauq.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598121/v5vmosnrxdwfvya0w2hw.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598122/jem9doy2yspa92vkqezy.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598123/zpc33pcl5ilkjxhlnecw.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598124/l8yuxcmtdhzum51eev3r.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-30T23:54:46.000000Z",
            "updated_at": "2025-08-30T23:54:46.000000Z",
            "deleted_at": null
        },
        {
            "id": 28,
            "uuid": "b845323c-d041-427b-a9ae-17a28dc7faf5",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "Camry Se 2016",
            "fee": 15500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Sporty styling with everyday practicality, this model features a refined exterior design, a comfortable and well-appointed cabin, and advanced safety features. Its efficient powertrain delivers a smooth balance of performance and fuel economy, while sport-tuned suspension and responsive handling add a dynamic driving experience. With a reputation for reliability, comfort, and value, it remains a standout choice for drivers seeking both style and dependability in a daily driver.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756597853/csumvsjtxny3qwvnpgmg.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756597854/ow8uczi8vsdmd0oadrnq.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756597855/kcrfxty7libos7ipopz3.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756597856/cds3dimsw6d5l4dcxp4o.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756597857/rkbdqj8vykjfwufhehgb.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756597858/cqlziszfg3tateav5mtd.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-30T23:50:20.000000Z",
            "updated_at": "2025-08-30T23:50:20.000000Z",
            "deleted_at": null
        },
        {
            "id": 27,
            "uuid": "0707b19c-b639-4abb-bc3b-a2c3f19d1e3b",
            "category": "Sales",
            "brand": "Lexus",
            "type": "Suv",
            "model": "Rx350 2010",
            "fee": 21500000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Experience luxury and performance with this 2010 Lexus RX350 Full Option. Equipped with top-of-the-line features, this vehicle offers a smooth and powerful drive, combined with a stylish design and a host of premium amenities. From its luxurious leather interiors to the advanced tech features, every detail has been designed for comfort and convenience. The 3.5L V6 engine delivers impressive power while maintaining excellent fuel efficiency. With its untampered engine and gearbox, this SUV promises reliability and long-term performance. Fully loaded with all the options, it’s perfect for those who demand sophistication and practicality.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756578364/zniioub3ff6dtrwahsow.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756578365/spc0ciizljivrzl8fyur.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756578367/kui8zdtjsqg4yp4clfxd.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756578367/j4fhk63bhgxhijlgoowl.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756578368/woucahnsfothfoynrdrx.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756578369/n9kqueq3lmcahtwtyeou.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-30T18:25:31.000000Z",
            "updated_at": "2025-08-30T18:25:31.000000Z",
            "deleted_at": null
        },
        {
            "id": 26,
            "uuid": "ec926401-bcf0-4310-9d1b-d3f21da5c2af",
            "category": "Sales",
            "brand": "Toyota",
            "type": "Sedan",
            "model": "2015 Corolla",
            "fee": 15800000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Foreign used, in excellent condition, and completely clean. No repairs or fixes required—everything is in perfect working order. The engine and gearbox are untampered, offering optimal performance. Entry date: August 2025.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756577971/lyannzjcy8et7phihjej.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756577972/sywsvaqy8epmapzenuc9.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756577973/jaddrbpxqrxfx3rkdsos.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1756577975/rm9ks9s29jz5qagaap2c.jpg"
            ],
            "status": "available",
            "created_at": "2025-08-30T18:18:57.000000Z",
            "updated_at": "2025-08-30T18:18:57.000000Z",
            "deleted_at": null
        }
    ]
}
 

Request      

GET api/services

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

page   integer  optional    

The page number. Example: 1

per_page   integer  optional    

Number of items per page. Example: 10

sort   string  optional    

Sort order. Allowed values: asc, desc. Example: desc

status   string  optional    

Filter by service status. Example: available

search   string  optional    

Search keyword. Example: ford

type   string  optional    

Field to search from. Allowed: category,brand,type,model,description. Example: brand

range[from]   string  optional    

date Start date. Example: 2024-01-01

range[to]   string  optional    

date End date. Example: 2024-12-31

Get recent services

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/services/recent?limit=5&status=available" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/services/recent"
);

const params = {
    "limit": "5",
    "status": "available",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 52
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        {
            "id": 120,
            "uuid": "3e300270-6a5c-48f9-a85b-e0d57e5323a3",
            "category": "Accessories",
            "brand": "Toyota",
            "type": "All",
            "model": "All Model",
            "fee": 20000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Glittering steering logo for all cars\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303695/wvvuzixvc0y9siocxz5h.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-24T10:59:50.000000Z",
            "updated_at": "2025-10-24T10:59:50.000000Z",
            "deleted_at": null
        },
        {
            "id": 119,
            "uuid": "71755105-de11-4ca6-a7df-004c5b26061d",
            "category": "Installation",
            "brand": "Mercedes_Benz",
            "type": "Sedan",
            "model": "1977",
            "fee": 1200000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": true,
            "description": "[{\"title\":\"Tell us your preferred prints or color combinations, and we’ll bring your vision to life! Whether you want a bold, vibrant change or a sleek, modern finish. We’ll print and design the wrap to your exact specifications.\\nWe provide Premium Quality Vinyl for long-lasting results.\\nExpert Installation for a flawless finish\\nFull Customization making your car truly one-of-a-kind.\\n\\n📞 Book Your Wrap Today!\\nGet in touch now, and let’s transform your vehicle into a masterpiece.\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303354/qrnldav68v7ioe5yyuum.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303356/b75obtosmu7rnepspj5d.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303358/jzxzrqnekh9yo0jftrrk.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303360/maj90rxdqgxkftztcea2.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303361/wfeme5rzwm8pje9ovd3j.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303362/nvcsgjgx04olsvv5n0ey.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303363/jpu71qimjprsdf13po4n.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303364/u9vada9xrjjxgkuvbduv.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303365/qoqljvmrjpfz6iliaekz.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303366/cnksceglru0yjsitpjqa.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-24T10:54:22.000000Z",
            "updated_at": "2025-10-24T10:54:22.000000Z",
            "deleted_at": null
        },
        {
            "id": 118,
            "uuid": "93aea53c-4a42-4e48-aaa8-086fdddb607a",
            "category": "Hire",
            "brand": "Mercedes_Benz",
            "type": "Sedan",
            "model": "1977",
            "fee": 70000,
            "location": "Ibadan",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"Looking for a classic, stylish car for your next photo shoot or movie production? This 1977 Mercedes-Benz is the perfect choice!\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303099/oet4vlaiv8ln6jqcc8az.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303101/muuodzzgkhkn5grleqcv.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303103/s1wru7amgw0sdcl6otxj.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303104/vmkw6wkf7uguhhgdcpst.jpg",
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1761303105/ao9ybrgyxqzuekdbgdqr.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-24T10:50:02.000000Z",
            "updated_at": "2025-10-24T10:50:02.000000Z",
            "deleted_at": null
        },
        {
            "id": 117,
            "uuid": "f538d757-eb04-44f8-aec4-15ea6477275e",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "Lion Power Fuel Pump",
            "fee": 16000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"High quality Lion Power Fuel Pump fits for all vehicles \",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760957827/qpfopskwpf9ki6mg37pj.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:55:27.000000Z",
            "updated_at": "2025-10-20T10:55:27.000000Z",
            "deleted_at": null
        },
        {
            "id": 116,
            "uuid": "9a2ec340-14d7-4b54-934a-b50bf1b5416a",
            "category": "Parts",
            "brand": "All",
            "type": "All",
            "model": "Original Eagle Fuel Pump",
            "fee": 14000,
            "location": "Anywhere",
            "has_online_payment": false,
            "featured": false,
            "description": "[{\"title\":\"High quality Fuel Pump\",\"value\":\"\"}]",
            "image_urls": [
                "https://res.cloudinary.com/da5xtmva0/image/upload/v1760957687/dxznewbpgxglrrwcupd3.jpg"
            ],
            "status": "available",
            "created_at": "2025-10-20T10:53:07.000000Z",
            "updated_at": "2025-10-20T10:53:07.000000Z",
            "deleted_at": null
        }
    ]
}
 

Request      

GET api/services/recent

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

limit   integer  optional    

Limit number of recent services. Example: 5

status   string  optional    

Filter by status. Example: available

View a service

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/services/c3bdfc89-ab64-4ebf-b331-305d5ba41783" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/services/c3bdfc89-ab64-4ebf-b331-305d5ba41783"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 51
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": {
        "id": 1,
        "uuid": "c3bdfc89-ab64-4ebf-b331-305d5ba41783",
        "category": "Sales",
        "brand": "Lexus",
        "type": "Suv",
        "model": "Rx350 2011",
        "fee": 18500000,
        "location": "Ibadan",
        "has_online_payment": false,
        "featured": true,
        "description": "[{\"title\":\"2011 model, clean and sharp. Powerful engine, smooth ride, leather interior with chilling AC, and plenty of comfort features. Well-maintained, reliable, and ready for the road — buy and drive.\",\"value\":\"\"}]",
        "image_urls": [
            "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598778/jwmfelsvl46s9bxxuk37.jpg",
            "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598779/nxrvcjafgvcavgce6fua.jpg",
            "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598779/t6uyniuqdr2vh873c0rg.jpg",
            "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598780/cuauervshqgkki9wghpk.jpg",
            "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598781/xs6bitapknz1kuzxl4ep.jpg",
            "https://res.cloudinary.com/da5xtmva0/image/upload/v1756598782/ir8n9hjiqftad4doxmjx.jpg"
        ],
        "status": "available",
        "created_at": "2025-08-31T00:05:44.000000Z",
        "updated_at": "2025-08-31T00:05:44.000000Z",
        "deleted_at": null
    }
}
 

Request      

GET api/services/{service_uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

service_uuid   string     

Example: c3bdfc89-ab64-4ebf-b331-305d5ba41783

PasswordReset

Send a password reset link to the user's email.

Send Password Reset token

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/auth/request-password" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"user@example.com\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/auth/request-password"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "user@example.com"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/auth/request-password

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

email   string     

The user's email address. Example: user@example.com

Change Password

Example request:
curl --request PUT \
    "http://knowdrive.techtrovelab.com/api/auth/change-password" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"user@techtrovlab.com\",
    \"hash\": \"123456\",
    \"password\": \"MyNewPass123!\",
    \"password_confirmation\": \"MyNewPass123!\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/auth/change-password"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "user@techtrovlab.com",
    "hash": "123456",
    "password": "MyNewPass123!",
    "password_confirmation": "MyNewPass123!"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/auth/change-password

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

email   string     

The user's email address. Example: user@techtrovlab.com

hash   string     

The token sent to the user's email. Example: 123456

password   string     

The new password. Example: MyNewPass123!

password_confirmation   string     

Must match the password. Example: MyNewPass123!

Verify Reset Token

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/auth/verify-token" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"user@example.com\",
    \"hash\": \"123456\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/auth/verify-token"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "user@example.com",
    "hash": "123456"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/auth/verify-token

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

email   string     

The user's email address. Example: user@example.com

hash   string     

The token to verify. Example: 123456

Payments

List all payments.

Retrieve a paginated list of all transactions with optional filters like status, sort, search, and date range.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/payments?perPage=10&sort=desc&status=successful&search=REF12345&type=reference&range%5Bfrom%5D=2024-01-01&range%5Bto%5D=2024-12-31" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/payments"
);

const params = {
    "perPage": "10",
    "sort": "desc",
    "status": "successful",
    "search": "REF12345",
    "type": "reference",
    "range[from]": "2024-01-01",
    "range[to]": "2024-12-31",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "status": "success",
    "data": [
        {
            "id": 1,
            "amount": 5000,
            "status": "successful",
            "reference": "TRX12345"
        }
    ]
}
 

Request      

GET api/payments

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

perPage   integer  optional    

Number of records per page. Example: 10

sort   string  optional    

Sort direction. Allowed values: asc, desc. Example: desc

status   string  optional    

Filter by status. One of transaction statuses: pending, paid, failed. Example: successful

search   string  optional    

Search keyword. Example: REF12345

type   string  optional    

The field to apply the search on. One of: session, reference, method. Example: reference

range[from]   string  optional    

required_with:range Start date (YYYY-MM-DD). Example: 2024-01-01

range[to]   string  optional    

required_with:range End date (YYYY-MM-DD). Example: 2024-12-31

Get the most recent payments.

Fetches the latest N transactions, optionally filtered by status.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/payments/recent?limit=5&status=pending" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/payments/recent"
);

const params = {
    "limit": "5",
    "status": "pending",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "status": "success",
    "data": [
        {
            "id": 1,
            "amount": 3000,
            "status": "pending"
        }
    ]
}
 

Request      

GET api/payments/recent

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

limit   integer  optional    

The number of recent transactions to retrieve. Defaults to 10. Example: 5

status   string  optional    

Optional transaction status filter. Example: pending

Get authenticated user's payments.

Returns a paginated list of transactions belonging to the authenticated user, with optional filters.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/payments/user/payments?perPage=10&sort=asc&status=successful&search=CASH-ReceivedAT&type=method&range%5Bfrom%5D=2024-05-01&range%5Bto%5D=2024-05-30" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/payments/user/payments"
);

const params = {
    "perPage": "10",
    "sort": "asc",
    "status": "successful",
    "search": "CASH-ReceivedAT",
    "type": "method",
    "range[from]": "2024-05-01",
    "range[to]": "2024-05-30",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "status": "success",
    "data": {
        "current_page": 1,
        "data": [
            {
                "id": 1,
                "amount": 2000,
                "method": "cash"
            }
        ]
    }
}
 

Request      

GET api/payments/user/payments

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

perPage   integer  optional    

Number of records per page. Example: 10

sort   string  optional    

Sort direction. Allowed values: asc, desc. Example: asc

status   string  optional    

Filter by status. One of transaction statuses: pending, paid, failed. Example: successful

search   string  optional    

Search keyword. Example: CASH-ReceivedAT

type   string  optional    

Field to apply the search on. One of: session, reference, method. Example: method

range[from]   string  optional    

required_with:range Start date (YYYY-MM-DD). Example: 2024-05-01

range[to]   string  optional    

required_with:range End date (YYYY-MM-DD). Example: 2024-05-30

View a specific payment.

Retrieve a single payment transaction by uuid, including associated services and user.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/payments/consequatur" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/payments/consequatur"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "status": "success",
    "data": {
        "id": 1,
        "amount": 2000,
        "status": "paid",
        "user": {
            "id": 5,
            "name": "John Doe"
        },
        "services": [
            {
                "id": 1,
                "name": "Document Upload"
            }
        ]
    }
}
 

Request      

GET api/payments/{payment}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

payment   string     

The payment. Example: consequatur

Create a new payment.

Initiate a payment transaction for one or more services.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/payments/make" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"coupon\": \"COUPON2024\",
    \"method\": \"online, others\",
    \"comment\": \"Payment for certificate\",
    \"service_ids\": [
        1,
        2
    ],
    \"service_ids[]\": 1
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/payments/make"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "coupon": "COUPON2024",
    "method": "online, others",
    "comment": "Payment for certificate",
    "service_ids": [
        1,
        2
    ],
    "service_ids[]": 1
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (201):


{
    "status": "success",
    "data": {
        "url": "https://payment-gateway.com/redirect?ref=TRX12345"
    }
}
 

Request      

POST api/payments/make

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

coupon   string  optional    

Optional coupon code. Example: COUPON2024

method   string     

Payment method. Example: online, others

comment   string  optional    

Optional comment. Example: Payment for certificate

service_ids   string[]     

List of service IDs to pay for.

service_ids[]   integer     

Service ID. Example: 1

Confirm a pending cash payment.

Confirms a pending cash transaction using the transaction reference.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/payments/confirm" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"ref\": \"TRX12345\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/payments/confirm"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "ref": "TRX12345"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "status": "success",
    "data": {
        "confirmed": {
            "id": 1,
            "status": "paid",
            "session": "CASH-ReceivedAT-1720469891"
        }
    }
}
 

Request      

POST api/payments/confirm

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

ref   string     

The transaction reference to confirm. Example: TRX12345

Preferences

Get all Preferences.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/preferences" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/preferences"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/preferences

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Store a new Preference.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/preferences" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"email\",
    \"type\": \"chat\",
    \"value\": true
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/preferences"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "email",
    "type": "chat",
    "value": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/preferences

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

name   string     

Example: email

Must be one of:
  • email
  • push
type   string     

Example: chat

Must be one of:
  • notification
  • chat
  • recommendations
value   boolean     

Example: true

RecentViews

Get all RecentViews.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/recent-views" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"asc\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/recent-views"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "asc"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/recent-views

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

order   string  optional    

Example: asc

Must be one of:
  • asc
  • desc

Get RecentViews for the authenticated user.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/recent-views/myviews" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"order\": \"asc\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/recent-views/myviews"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "order": "asc"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/recent-views/myviews

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

order   string  optional    

Example: asc

Must be one of:
  • asc
  • desc

Store a new RecentView.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/recent-views" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"service_id\": 11613.31890586000008624978363513946533203125
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/recent-views"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "service_id": 11613.31890586000008624978363513946533203125
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/recent-views

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

service_id   number     

The id of an existing record in the our_services table. Example: 11613.31890586

Remove the specified RecentView item.

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/recent-views/f3f440b3-a81d-4865-bad8-acab268fe169" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/recent-views/f3f440b3-a81d-4865-bad8-acab268fe169"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/recent-views/{recent_uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

recent_uuid   string     

Example: f3f440b3-a81d-4865-bad8-acab268fe169

ReferralRewards

Display a listing of Referral Rewards.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/referral-rewards" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"sort\": \"asc\",
    \"search\": \"consequatur\",
    \"is_claimed\": false,
    \"range\": {
        \"from\": \"2025-11-04T09:54:42\",
        \"to\": \"2025-11-04T09:54:42\"
    }
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/referral-rewards"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "sort": "asc",
    "search": "consequatur",
    "is_claimed": false,
    "range": {
        "from": "2025-11-04T09:54:42",
        "to": "2025-11-04T09:54:42"
    }
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/referral-rewards

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

sort   string  optional    

Example: asc

Must be one of:
  • desc
  • asc
search   string  optional    

The referral_code of an existing record in the users table. Example: consequatur

is_claimed   boolean  optional    

Example: false

range   object  optional    

Must contain 2 items.

from   string  optional    

This field is required when range is present. Must be a valid date. Example: 2025-11-04T09:54:42

to   string  optional    

This field is required when range is present. Must be a valid date. Example: 2025-11-04T09:54:42

Store a newly created Referral Reward in storage.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/referral-rewards" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"user\": \"consequatur\",
    \"name\": \"mqeopfuudtdsufvyvddqa\",
    \"type\": \"cash\",
    \"value\": 46,
    \"is_claimed\": false
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/referral-rewards"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "user": "consequatur",
    "name": "mqeopfuudtdsufvyvddqa",
    "type": "cash",
    "value": 46,
    "is_claimed": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/referral-rewards

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

user   string     

The id of an existing record in the users table. Example: consequatur

name   string     

Must not be greater than 100 characters. Example: mqeopfuudtdsufvyvddqa

description   string  optional    
type   string     

Example: cash

Must be one of:
  • cash
  • points
value   number     

example types. Must be at least 0. Example: 46

is_claimed   boolean  optional    

Example: false

Get the current authenticated user's active referral reward.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/referral-rewards/user" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/referral-rewards/user"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/referral-rewards/user

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Display the specified Referral Reward.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/referral-rewards/" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/referral-rewards/"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/referral-rewards/{referralReward_uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

referralReward_uuid   string     

Mark a referral reward as claimed.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/referral-rewards//claim" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/referral-rewards//claim"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Request      

POST api/referral-rewards/{referralReward_uuid}/claim

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

referralReward_uuid   string     

Remove the specified Referral Reward from storage.

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/referral-rewards/" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/referral-rewards/"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/referral-rewards/{referralReward_uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

referralReward_uuid   string     

Referrals

Get top referrers with their referral counts.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/referrals" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/referrals"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/referrals

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Get referrals for the authenticated user.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/referrals/myreferral/9ecffa6c-824e-499c-b814-9465603fed22" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/referrals/myreferral/9ecffa6c-824e-499c-b814-9465603fed22"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/referrals/myreferral/{user?}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

user   string  optional    

Example: 9ecffa6c-824e-499c-b814-9465603fed22

Settings

Store a newly created Setting in storage.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/admin/settings" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"type\": \"payment\",
    \"value\": \"flutterwave\",
    \"status\": true
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/settings"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "type": "payment",
    "value": "flutterwave",
    "status": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/admin/settings

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

type   string     

The type of setting. One of: whatsapp, phone, instagram, payment. Example: payment

value   string     

The value of the setting. Can be a phone number, link, or service name (e.g. flutterwave). Example: flutterwave

status   boolean  optional    

Optional. Status flag. Example: true

Update an existing Settings in storage.

Example request:
curl --request PUT \
    "http://knowdrive.techtrovelab.com/api/admin/settings/8f7e9354-b1fc-4bb7-ae8e-9c0fbe6503b3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"type\": \"instagram\",
    \"value\": \"https:\\/\\/instagram.com\\/yourpage\",
    \"status\": false
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/settings/8f7e9354-b1fc-4bb7-ae8e-9c0fbe6503b3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "type": "instagram",
    "value": "https:\/\/instagram.com\/yourpage",
    "status": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/admin/settings/{settings_uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

settings_uuid   string     

Example: 8f7e9354-b1fc-4bb7-ae8e-9c0fbe6503b3

Body Parameters

type   string  optional    

The type of setting. One of: whatsapp, phone, instagram, payment. Example: instagram

value   string  optional    

The updated value. Can be a phone number, link, or service name. Example: https://instagram.com/yourpage

status   boolean  optional    

The status of the setting. Example: false

Remove the specified Settings from storage.

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/admin/settings/8f7e9354-b1fc-4bb7-ae8e-9c0fbe6503b3" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/admin/settings/8f7e9354-b1fc-4bb7-ae8e-9c0fbe6503b3"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/admin/settings/{settings_uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

settings_uuid   string     

Example: 8f7e9354-b1fc-4bb7-ae8e-9c0fbe6503b3

Display a listing of the Settings.

Search settings by type.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/settings" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"type\": \"whatsapp\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/settings"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "type": "whatsapp"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 55
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": [
        {
            "id": 1,
            "uuid": "8f7e9354-b1fc-4bb7-ae8e-9c0fbe6503b3",
            "type": "Whatsapp",
            "value": "https://wa.me/2347034709902\r\n",
            "status": true,
            "created_at": "2025-07-20T01:08:24.000000Z",
            "updated_at": "2025-07-20T01:08:24.000000Z"
        }
    ]
}
 

Request      

GET api/settings

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

type   string  optional    

Optional. Filter by settings type. One of: whatsapp, phone, instagram, payment. Example: whatsapp

Display the specified Settings.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/settings/consequatur/view" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/settings/consequatur/view"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 54
vary: Origin
 

{
    "status": 200,
    "success": true,
    "data": []
}
 

Request      

GET api/settings/{setting}/view

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

setting   string     

The setting. Example: consequatur

User Management

Verify user email with OTP.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/verify-email" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"email\": \"user@example.com\",
    \"otp\": \"123456\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/verify-email"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "email": "user@example.com",
    "otp": "123456"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "message": "Email verified successfully",
        "validity": true
    }
}
 

Example response (200):


{
    "data": {
        "message": "Invalid OTP",
        "validity": false
    }
}
 

Request      

POST api/verify-email

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

email   string     

The user's email address. Example: user@example.com

otp   string     

The one-time password sent to the user's email. Example: 123456

List all users.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/users" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"is_locked\": false
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/users"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "is_locked": false
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/users

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

is_locked   boolean  optional    

Example: false

Show a specific user.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/users/9ecffa6c-824e-499c-b814-9465603fed22/view" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/users/9ecffa6c-824e-499c-b814-9465603fed22/view"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/users/{user_uuid}/view

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

user_uuid   string     

Example: 9ecffa6c-824e-499c-b814-9465603fed22

Update user's profile image.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/users/profile/9ecffa6c-824e-499c-b814-9465603fed22" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "profile_img=@/tmp/phpLlveg4" 
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/users/profile/9ecffa6c-824e-499c-b814-9465603fed22"
);

const headers = {
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('profile_img', document.querySelector('input[name="profile_img"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());

Request      

POST api/users/profile/{user_uuid}

Headers

Content-Type        

Example: multipart/form-data

Accept        

Example: application/json

URL Parameters

user_uuid   string     

Example: 9ecffa6c-824e-499c-b814-9465603fed22

Body Parameters

profile_img   file     

Must be an image. Must not be greater than 2048 kilobytes. Example: /tmp/phpLlveg4

Update user details.

Example request:
curl --request PATCH \
    "http://knowdrive.techtrovelab.com/api/users/9ecffa6c-824e-499c-b814-9465603fed22" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"first_name\": \"vmqeopfuudtdsufvyvddq\",
    \"last_name\": \"amniihfqcoynlazghdtqt\",
    \"address\": \"qxbajwbpilpmufinllwlo\",
    \"phone\": 11613.31890586000008624978363513946533203125,
    \"dob\": \"04-11-2025\",
    \"gender\": \"consequatur\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/users/9ecffa6c-824e-499c-b814-9465603fed22"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "first_name": "vmqeopfuudtdsufvyvddq",
    "last_name": "amniihfqcoynlazghdtqt",
    "address": "qxbajwbpilpmufinllwlo",
    "phone": 11613.31890586000008624978363513946533203125,
    "dob": "04-11-2025",
    "gender": "consequatur"
};

fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PATCH api/users/{uuid?}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

uuid   string  optional    

Example: 9ecffa6c-824e-499c-b814-9465603fed22

Body Parameters

first_name   string  optional    

Must not be greater than 255 characters. Example: vmqeopfuudtdsufvyvddq

last_name   string  optional    

Must not be greater than 255 characters. Example: amniihfqcoynlazghdtqt

address   string  optional    

Must not be greater than 255 characters. Example: qxbajwbpilpmufinllwlo

phone   number  optional    

Example: 11613.31890586

dob   string  optional    

Must be a valid date in the format d-m-Y. Example: 04-11-2025

gender   string  optional    

Example: consequatur

Delete a user.

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/users/9ecffa6c-824e-499c-b814-9465603fed22" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/users/9ecffa6c-824e-499c-b814-9465603fed22"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/users/{uuid}

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

uuid   string     

Example: 9ecffa6c-824e-499c-b814-9465603fed22

Check if authenticated user's profile is complete.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/users/profile-complete" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/users/profile-complete"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/users/profile-complete

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Change the authenticated user's password.

Example request:
curl --request PUT \
    "http://knowdrive.techtrovelab.com/api/security/change-pass" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"current_password\": \"currentPassword123\",
    \"password\": \"newPassword123\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/security/change-pass"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "current_password": "currentPassword123",
    "password": "newPassword123"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

PUT api/security/change-pass

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

current_password   string  optional    

The current password of the user, required when changing password. This field is required when password is present. Example: currentPassword123

password   string  optional    

The new password for the user. It must be confirmed. This field is required when current_password is present. Must not be greater than 20 characters. Example: newPassword123

Show the authenticated user's profile.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/profile" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/profile"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/profile

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Create a new user.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/users" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"first_name\": \"Abiodun\",
    \"last_name\": \"Doe\",
    \"phone\": \"2348012345678\",
    \"email\": \"Abiodun@techtrovelab.com\",
    \"referral_code\": \"abiodun123\",
    \"gender\": \"male\",
    \"password\": \"securePassword123\"
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/users"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "first_name": "Abiodun",
    "last_name": "Doe",
    "phone": "2348012345678",
    "email": "Abiodun@techtrovelab.com",
    "referral_code": "abiodun123",
    "gender": "male",
    "password": "securePassword123"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/users

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

first_name   string     

The first name of the user. Must not be greater than 150 characters. Example: Abiodun

last_name   string     

The last name of the user. Must not be greater than 150 characters. Example: Doe

phone   string  optional    

Phone number in international format (e.g., 2348012345678). Must be unique. Must match the regex /^234[7-9][01]\d{8}$/. Example: 2348012345678

email   string     

The email address of the user. Must be unique in the users table. Must be a valid email address. Example: Abiodun@techtrovelab.com

referral_code   string  optional    

A referral code (optional). The referral_code of an existing record in the users table. Example: abiodun123

gender   string  optional    

The gender of the user. Accepts one of the predefined values: male, female. Example: male

Must be one of:
  • male
  • female
password   string     

The password for the user account required. Must not be greater than 20 characters. Example: securePassword123

Wishlists

Get all wishlists.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/wishlists" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/wishlists"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/wishlists

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Get wishlists for the authenticated user.

Example request:
curl --request GET \
    --get "http://knowdrive.techtrovelab.com/api/wishlists/mywish" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/wishlists/mywish"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
vary: Origin
 

{
    "status": 401,
    "success": false,
    "error": {
        "code": "unauthenticated",
        "message": "Please sign in to continue."
    }
}
 

Request      

GET api/wishlists/mywish

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Store a new wishlist.

Example request:
curl --request POST \
    "http://knowdrive.techtrovelab.com/api/wishlists" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"service_id\": 11613.31890586000008624978363513946533203125
}"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/wishlists"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "service_id": 11613.31890586000008624978363513946533203125
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request      

POST api/wishlists

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

Body Parameters

service_id   number     

The id of an existing record in the our_services table. Example: 11613.31890586

Remove the specified wishlist item.

Example request:
curl --request DELETE \
    "http://knowdrive.techtrovelab.com/api/wishlists/51738543-511d-49d4-b030-a6429765da0e/remove" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://knowdrive.techtrovelab.com/api/wishlists/51738543-511d-49d4-b030-a6429765da0e/remove"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Request      

DELETE api/wishlists/{wishlist_uuid}/remove

Headers

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

wishlist_uuid   string     

Example: 51738543-511d-49d4-b030-a6429765da0e