API reference · Your own cars

Your fleet

For businesses with their own cars (plan: fleet or both): add cars, photos and papers, open rental periods and list cars for sale.

get/fleet/vehicles

List your cars

Fleet plan

Your own cars, with their review status. Needs the fleet plan.

Query parameters

  • statusstring

    pending_review, approved, rejected or suspended.

  • purposestring

    rent or sell.

    rentsell

  • pageinteger

    Page number, from 1.

    Example: 1

  • limitinteger

    Items per page (1–100). Default 20.

    Example: 20

Response 200

A page: { data: [ … ], page, totalPages, total }. Each item in data:

  • idintegerrequired
  • titlestringrequired

    e.g. “2021 Toyota Camry”.

  • makestring
  • modelstring
  • yearinteger
  • classenumrequired

    economysedansuvvanluxury

  • transmissionenum

    automaticmanual

  • fuelenum

    petroldieselhybridelectric

  • seatsinteger
  • colourstring · nullable
  • photosarray of string
  • dailyRateintegerrequired

    Price per 24 hours.

  • depositinteger

    Refundable deposit.

  • locationobjectrequired
    Show 4 fields
    • idinteger
    • codestringrequired
    • namestring
    • citystring
  • ratingobject · nullable
    Show 2 fields
    • averagenumber

      Average of 1 to 5 stars, one decimal.

    • countinteger

      Published reviews of this car.

  • platestring
  • purposeenum

    rentsell

  • statusenum

    pending_reviewapprovedrejectedsuspendedsoldremoved

  • reviewNotestring · nullable

    Why it was rejected or what is missing.

  • papersobject
    Show 4 fields
    • insuranceExpirydate-time · nullable

      ISO 8601 date-time.

    • roadworthinessExpirydate-time · nullable

      ISO 8601 date-time.

    • hasInsuranceboolean
    • hasRegistrationboolean
  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
curl "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles?page=1&limit=20" \
  -H "Authorization: Bearer wc_test_YOUR_KEY"
post/fleet/vehicles

Add a car

Fleet plan

The car starts pending_review: our team checks the papers before it can be booked or sold. Upload photos and papers next. Prices are whole naira, in kobo.

Request body · application/json

  • makestringrequired
  • modelstringrequired
  • yearintegerrequired
  • platestringrequired

    Unique. Saved in capitals without spaces.

  • colourstring
  • classenum

    economysedansuvvanluxury

  • transmissionenum

    automaticmanual

  • fuelenum

    petroldieselhybridelectric

  • seatsinteger
  • locationstringrequired

    Airport code, e.g. ABV.

  • dailyRateinteger

    At least ₦1,000 (100000). Whole naira.

  • depositinteger

    Whole naira.

  • purposeenum

    Default rent.

    rentsell

  • insuranceExpirydate-time

    ISO 8601 date-time.

  • roadworthinessExpirydate-time

    ISO 8601 date-time.

Response 201

In data:

  • idintegerrequired
  • titlestringrequired

    e.g. “2021 Toyota Camry”.

  • makestring
  • modelstring
  • yearinteger
  • classenumrequired

    economysedansuvvanluxury

  • transmissionenum

    automaticmanual

  • fuelenum

    petroldieselhybridelectric

  • seatsinteger
  • colourstring · nullable
  • photosarray of string
  • dailyRateintegerrequired

    Price per 24 hours.

  • depositinteger

    Refundable deposit.

  • locationobjectrequired
    Show 4 fields
    • idinteger
    • codestringrequired
    • namestring
    • citystring
  • ratingobject · nullable
    Show 2 fields
    • averagenumber

      Average of 1 to 5 stars, one decimal.

    • countinteger

      Published reviews of this car.

  • platestring
  • purposeenum

    rentsell

  • statusenum

    pending_reviewapprovedrejectedsuspendedsoldremoved

  • reviewNotestring · nullable

    Why it was rejected or what is missing.

  • papersobject
    Show 4 fields
    • insuranceExpirydate-time · nullable

      ISO 8601 date-time.

    • roadworthinessExpirydate-time · nullable

      ISO 8601 date-time.

    • hasInsuranceboolean
    • hasRegistrationboolean
  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 400invalid: something in the request is wrong. The message says what.
  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
curl -X POST "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles" \
  -H "Authorization: Bearer wc_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "make": "Toyota",
  "model": "Hilux",
  "year": 2022,
  "plate": "ABC123XY",
  "colour": "White",
  "class": "suv",
  "transmission": "manual",
  "fuel": "diesel",
  "seats": 5,
  "location": "ABV",
  "dailyRate": 6500000,
  "deposit": 20000000
}'
get/fleet/vehicles/{id}

Get one of your cars

Fleet plan

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Response 200

In data:

  • idintegerrequired
  • titlestringrequired

    e.g. “2021 Toyota Camry”.

  • makestring
  • modelstring
  • yearinteger
  • classenumrequired

    economysedansuvvanluxury

  • transmissionenum

    automaticmanual

  • fuelenum

    petroldieselhybridelectric

  • seatsinteger
  • colourstring · nullable
  • photosarray of string
  • dailyRateintegerrequired

    Price per 24 hours.

  • depositinteger

    Refundable deposit.

  • locationobjectrequired
    Show 4 fields
    • idinteger
    • codestringrequired
    • namestring
    • citystring
  • ratingobject · nullable
    Show 2 fields
    • averagenumber

      Average of 1 to 5 stars, one decimal.

    • countinteger

      Published reviews of this car.

  • platestring
  • purposeenum

    rentsell

  • statusenum

    pending_reviewapprovedrejectedsuspendedsoldremoved

  • reviewNotestring · nullable

    Why it was rejected or what is missing.

  • papersobject
    Show 4 fields
    • insuranceExpirydate-time · nullable

      ISO 8601 date-time.

    • roadworthinessExpirydate-time · nullable

      ISO 8601 date-time.

    • hasInsuranceboolean
    • hasRegistrationboolean
  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
curl "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12" \
  -H "Authorization: Bearer wc_test_YOUR_KEY"
patch/fleet/vehicles/{id}

Change a car

Fleet plan

Prices, colour, location and so on. Changing what the car is (make, model, year, plate) sends it back to review; a price change does not. Switching to sell is refused while a rental is under way.

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Request body · application/json

  • makestringrequired
  • modelstringrequired
  • yearintegerrequired
  • platestringrequired

    Unique. Saved in capitals without spaces.

  • colourstring
  • classenum

    economysedansuvvanluxury

  • transmissionenum

    automaticmanual

  • fuelenum

    petroldieselhybridelectric

  • seatsinteger
  • locationstringrequired

    Airport code, e.g. ABV.

  • dailyRateinteger

    At least ₦1,000 (100000). Whole naira.

  • depositinteger

    Whole naira.

  • purposeenum

    Default rent.

    rentsell

  • insuranceExpirydate-time

    ISO 8601 date-time.

  • roadworthinessExpirydate-time

    ISO 8601 date-time.

Response 200

In data:

  • idintegerrequired
  • titlestringrequired

    e.g. “2021 Toyota Camry”.

  • makestring
  • modelstring
  • yearinteger
  • classenumrequired

    economysedansuvvanluxury

  • transmissionenum

    automaticmanual

  • fuelenum

    petroldieselhybridelectric

  • seatsinteger
  • colourstring · nullable
  • photosarray of string
  • dailyRateintegerrequired

    Price per 24 hours.

  • depositinteger

    Refundable deposit.

  • locationobjectrequired
    Show 4 fields
    • idinteger
    • codestringrequired
    • namestring
    • citystring
  • ratingobject · nullable
    Show 2 fields
    • averagenumber

      Average of 1 to 5 stars, one decimal.

    • countinteger

      Published reviews of this car.

  • platestring
  • purposeenum

    rentsell

  • statusenum

    pending_reviewapprovedrejectedsuspendedsoldremoved

  • reviewNotestring · nullable

    Why it was rejected or what is missing.

  • papersobject
    Show 4 fields
    • insuranceExpirydate-time · nullable

      ISO 8601 date-time.

    • roadworthinessExpirydate-time · nullable

      ISO 8601 date-time.

    • hasInsuranceboolean
    • hasRegistrationboolean
  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 400invalid: something in the request is wrong. The message says what.
  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
  • 409conflict or unavailable: not possible in the current state, or the car was just taken.
curl -X PATCH "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12" \
  -H "Authorization: Bearer wc_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "dailyRate": 7000000
}'
delete/fleet/vehicles/{id}

Delete a car

Fleet plan

The same as "Delete this car" in your dashboard. Refused (409) while a rental is booked or under way, or a buyer has reserved the car. A car that never had a booking or a sale is erased. A car with history is taken off the road for good: its rental periods are cancelled, any listing is withdrawn, and it no longer appears in your list or on any site, but its record is kept because past bookings and earnings refer to it. deleted is true when it was erased.

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Response 200

In data:

  • deletedboolean
  • removedboolean

Errors

  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
  • 409conflict or unavailable: not possible in the current state, or the car was just taken.
curl -X DELETE "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12" \
  -H "Authorization: Bearer wc_test_YOUR_KEY"
post/fleet/vehicles/{id}/photos

Upload a photo

Fleet plan

multipart/form-data with a file field: JPEG, PNG or WebP up to 10 MB; up to 12 photos per car. The first is the main photo.

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Request body · multipart/form-data

  • filestringrequired

Response 201

In data:

  • idintegerrequired
  • titlestringrequired

    e.g. “2021 Toyota Camry”.

  • makestring
  • modelstring
  • yearinteger
  • classenumrequired

    economysedansuvvanluxury

  • transmissionenum

    automaticmanual

  • fuelenum

    petroldieselhybridelectric

  • seatsinteger
  • colourstring · nullable
  • photosarray of string
  • dailyRateintegerrequired

    Price per 24 hours.

  • depositinteger

    Refundable deposit.

  • locationobjectrequired
    Show 4 fields
    • idinteger
    • codestringrequired
    • namestring
    • citystring
  • ratingobject · nullable
    Show 2 fields
    • averagenumber

      Average of 1 to 5 stars, one decimal.

    • countinteger

      Published reviews of this car.

  • platestring
  • purposeenum

    rentsell

  • statusenum

    pending_reviewapprovedrejectedsuspendedsoldremoved

  • reviewNotestring · nullable

    Why it was rejected or what is missing.

  • papersobject
    Show 4 fields
    • insuranceExpirydate-time · nullable

      ISO 8601 date-time.

    • roadworthinessExpirydate-time · nullable

      ISO 8601 date-time.

    • hasInsuranceboolean
    • hasRegistrationboolean
  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 400invalid: something in the request is wrong. The message says what.
  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
  • 409conflict or unavailable: not possible in the current state, or the car was just taken.
curl -X POST "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/photos" \
  -H "Authorization: Bearer wc_test_YOUR_KEY" \
  -F "file=@./photo.jpg"
delete/fleet/vehicles/{id}/photos/{index}

Remove a photo

Fleet plan

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

  • indexintegerrequired

    Position of the photo, from 0.

    Example: 0

Response 200

In data:

  • idintegerrequired
  • titlestringrequired

    e.g. “2021 Toyota Camry”.

  • makestring
  • modelstring
  • yearinteger
  • classenumrequired

    economysedansuvvanluxury

  • transmissionenum

    automaticmanual

  • fuelenum

    petroldieselhybridelectric

  • seatsinteger
  • colourstring · nullable
  • photosarray of string
  • dailyRateintegerrequired

    Price per 24 hours.

  • depositinteger

    Refundable deposit.

  • locationobjectrequired
    Show 4 fields
    • idinteger
    • codestringrequired
    • namestring
    • citystring
  • ratingobject · nullable
    Show 2 fields
    • averagenumber

      Average of 1 to 5 stars, one decimal.

    • countinteger

      Published reviews of this car.

  • platestring
  • purposeenum

    rentsell

  • statusenum

    pending_reviewapprovedrejectedsuspendedsoldremoved

  • reviewNotestring · nullable

    Why it was rejected or what is missing.

  • papersobject
    Show 4 fields
    • insuranceExpirydate-time · nullable

      ISO 8601 date-time.

    • roadworthinessExpirydate-time · nullable

      ISO 8601 date-time.

    • hasInsuranceboolean
    • hasRegistrationboolean
  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
curl -X DELETE "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/photos/0" \
  -H "Authorization: Bearer wc_test_YOUR_KEY"
post/fleet/vehicles/{id}/documents

Upload a paper

Fleet plan

multipart/form-data: file (a photo or PDF up to 10 MB) and kind (insurance or registration). Private: only our team and you can see it.

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Request body · multipart/form-data

  • filestringrequired
  • kindenumrequired

    insuranceregistration

Response 201

In data:

  • idintegerrequired
  • titlestringrequired

    e.g. “2021 Toyota Camry”.

  • makestring
  • modelstring
  • yearinteger
  • classenumrequired

    economysedansuvvanluxury

  • transmissionenum

    automaticmanual

  • fuelenum

    petroldieselhybridelectric

  • seatsinteger
  • colourstring · nullable
  • photosarray of string
  • dailyRateintegerrequired

    Price per 24 hours.

  • depositinteger

    Refundable deposit.

  • locationobjectrequired
    Show 4 fields
    • idinteger
    • codestringrequired
    • namestring
    • citystring
  • ratingobject · nullable
    Show 2 fields
    • averagenumber

      Average of 1 to 5 stars, one decimal.

    • countinteger

      Published reviews of this car.

  • platestring
  • purposeenum

    rentsell

  • statusenum

    pending_reviewapprovedrejectedsuspendedsoldremoved

  • reviewNotestring · nullable

    Why it was rejected or what is missing.

  • papersobject
    Show 4 fields
    • insuranceExpirydate-time · nullable

      ISO 8601 date-time.

    • roadworthinessExpirydate-time · nullable

      ISO 8601 date-time.

    • hasInsuranceboolean
    • hasRegistrationboolean
  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 400invalid: something in the request is wrong. The message says what.
  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
curl -X POST "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/documents" \
  -H "Authorization: Bearer wc_test_YOUR_KEY" \
  -F "file=@./photo.jpg" \
  -F "kind=insurance"
get/fleet/vehicles/{id}/availability

List rental periods

Fleet plan

The periods your car is on offer. Customers can book it only inside these.

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Query parameters

  • statusstring

    active, ended or cancelled.

    activeendedcancelled

Response 200

A list in data. Each item:

  • idinteger
  • fromdate-time

    ISO 8601 date-time.

  • todate-time

    ISO 8601 date-time.

  • statusenum

    activeendedcancelled

  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
curl "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/availability" \
  -H "Authorization: Bearer wc_test_YOUR_KEY"
post/fleet/vehicles/{id}/availability

Open a rental period

Fleet plan

Periods of one car cannot overlap, and cannot be in the past.

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Request body · application/json

  • fromdate-timerequired

    ISO 8601 date-time.

  • todate-timerequired

    ISO 8601 date-time.

Response 201

In data:

  • idinteger
  • fromdate-time

    ISO 8601 date-time.

  • todate-time

    ISO 8601 date-time.

  • statusenum

    activeendedcancelled

  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 400invalid: something in the request is wrong. The message says what.
  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
curl -X POST "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/availability" \
  -H "Authorization: Bearer wc_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "from": "2026-11-05T00:00:00+01:00",
  "to": "2026-11-30T23:59:00+01:00"
}'
delete/fleet/vehicles/{id}/availability/{windowId}

Close a rental period

Fleet plan

Refused (409) while a customer has booked inside it.

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

  • windowIdintegerrequired

    The period’s id.

    Example: 7

Response 200

In data:

  • idinteger
  • fromdate-time

    ISO 8601 date-time.

  • todate-time

    ISO 8601 date-time.

  • statusenum

    activeendedcancelled

  • createdAtdate-time

    ISO 8601 date-time.

Errors

  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
  • 409conflict or unavailable: not possible in the current state, or the car was just taken.
curl -X DELETE "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/availability/7" \
  -H "Authorization: Bearer wc_test_YOUR_KEY"
get/fleet/vehicles/{id}/listing

Get the sale listing

Fleet plan

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Response 200

In data:

  • idintegerrequired

    Pass as listingId to reserve.

  • vehicleVehiclerequired
    Show 15 fields
    • idintegerrequired
    • titlestringrequired

      e.g. “2021 Toyota Camry”.

    • makestring
    • modelstring
    • yearinteger
    • classenumrequired

      economysedansuvvanluxury

    • transmissionenum

      automaticmanual

    • fuelenum

      petroldieselhybridelectric

    • seatsinteger
    • colourstring · nullable
    • photosarray of string
    • dailyRateintegerrequired

      Price per 24 hours.

    • depositinteger

      Refundable deposit.

    • locationobjectrequired
      Show 4 fields
      • idinteger
      • codestringrequired
      • namestring
      • citystring
    • ratingobject · nullable
      Show 2 fields
      • averagenumber

        Average of 1 to 5 stars, one decimal.

      • countinteger

        Published reviews of this car.

  • priceintegerrequired

    Amount in kobo (₦1 = 100 kobo).

  • reservationDepositinteger

    What the buyer pays now to hold the car.

  • mileageKminteger
  • conditionenum

    excellentgoodfairneeds_work

  • accidentHistoryenum

    noneminormajor

  • originenum

    nigerian_usedforeign_used_duty_paidnew

  • vinstring

    Chassis number.

  • descriptionstring · nullable
  • statusstring
  • reviewNotestring · nullable

Errors

  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
curl "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/listing" \
  -H "Authorization: Bearer wc_test_YOUR_KEY"
post/fleet/vehicles/{id}/listing

Offer the car for sale

Fleet plan

The car must be set to purpose: "sell" first. The listing starts in review. Buyers reserve it through POST /sales/orders, with your keys only.

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Request body · application/json

  • askingPriceintegerrequired

    At least ₦100,000.

  • mileageKmintegerrequired
  • vinstringrequired

    Chassis number (11–17 characters).

  • conditionenum

    excellentgoodfairneeds_work

  • accidentHistoryenum

    noneminormajor

  • originenum

    nigerian_usedforeign_used_duty_paidnew

  • descriptionstring

Response 201

In data:

  • idintegerrequired

    Pass as listingId to reserve.

  • vehicleVehiclerequired
    Show 15 fields
    • idintegerrequired
    • titlestringrequired

      e.g. “2021 Toyota Camry”.

    • makestring
    • modelstring
    • yearinteger
    • classenumrequired

      economysedansuvvanluxury

    • transmissionenum

      automaticmanual

    • fuelenum

      petroldieselhybridelectric

    • seatsinteger
    • colourstring · nullable
    • photosarray of string
    • dailyRateintegerrequired

      Price per 24 hours.

    • depositinteger

      Refundable deposit.

    • locationobjectrequired
      Show 4 fields
      • idinteger
      • codestringrequired
      • namestring
      • citystring
    • ratingobject · nullable
      Show 2 fields
      • averagenumber

        Average of 1 to 5 stars, one decimal.

      • countinteger

        Published reviews of this car.

  • priceintegerrequired

    Amount in kobo (₦1 = 100 kobo).

  • reservationDepositinteger

    What the buyer pays now to hold the car.

  • mileageKminteger
  • conditionenum

    excellentgoodfairneeds_work

  • accidentHistoryenum

    noneminormajor

  • originenum

    nigerian_usedforeign_used_duty_paidnew

  • vinstring

    Chassis number.

  • descriptionstring · nullable
  • statusstring
  • reviewNotestring · nullable

Errors

  • 400invalid: something in the request is wrong. The message says what.
  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
  • 409conflict or unavailable: not possible in the current state, or the car was just taken.
curl -X POST "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/listing" \
  -H "Authorization: Bearer wc_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "askingPrice": 150000000,
  "mileageKm": 42000,
  "vin": "1HGCM82633A123456",
  "condition": "good",
  "description": "One careful owner"
}'
patch/fleet/vehicles/{id}/listing

Change the listing

Fleet plan

A changed chassis number sends a live listing back to review; a price change does not.

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Request body · application/json

  • askingPriceintegerrequired

    At least ₦100,000.

  • mileageKmintegerrequired
  • vinstringrequired

    Chassis number (11–17 characters).

  • conditionenum

    excellentgoodfairneeds_work

  • accidentHistoryenum

    noneminormajor

  • originenum

    nigerian_usedforeign_used_duty_paidnew

  • descriptionstring

Response 200

In data:

  • idintegerrequired

    Pass as listingId to reserve.

  • vehicleVehiclerequired
    Show 15 fields
    • idintegerrequired
    • titlestringrequired

      e.g. “2021 Toyota Camry”.

    • makestring
    • modelstring
    • yearinteger
    • classenumrequired

      economysedansuvvanluxury

    • transmissionenum

      automaticmanual

    • fuelenum

      petroldieselhybridelectric

    • seatsinteger
    • colourstring · nullable
    • photosarray of string
    • dailyRateintegerrequired

      Price per 24 hours.

    • depositinteger

      Refundable deposit.

    • locationobjectrequired
      Show 4 fields
      • idinteger
      • codestringrequired
      • namestring
      • citystring
    • ratingobject · nullable
      Show 2 fields
      • averagenumber

        Average of 1 to 5 stars, one decimal.

      • countinteger

        Published reviews of this car.

  • priceintegerrequired

    Amount in kobo (₦1 = 100 kobo).

  • reservationDepositinteger

    What the buyer pays now to hold the car.

  • mileageKminteger
  • conditionenum

    excellentgoodfairneeds_work

  • accidentHistoryenum

    noneminormajor

  • originenum

    nigerian_usedforeign_used_duty_paidnew

  • vinstring

    Chassis number.

  • descriptionstring · nullable
  • statusstring
  • reviewNotestring · nullable

Errors

  • 400invalid: something in the request is wrong. The message says what.
  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
curl -X PATCH "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/listing" \
  -H "Authorization: Bearer wc_test_YOUR_KEY"
delete/fleet/vehicles/{id}/listing

Withdraw the listing

Fleet plan

Not possible once a buyer has reserved the car (409).

Path parameters

  • idintegerrequired

    The car’s id.

    Example: 12

Response 200

In data:

  • withdrawnboolean

Errors

  • 401unauthorized: the API key is missing, wrong or revoked.
  • 403forbidden: this key may not do that (wrong plan, not a business, or the account is not approved).
  • 404not_found: no such thing, or it is not yours.
  • 409conflict or unavailable: not possible in the current state, or the car was just taken.
curl -X DELETE "https://engine-production-0004.up.railway.app/api/v1/fleet/vehicles/12/listing" \
  -H "Authorization: Bearer wc_test_YOUR_KEY"