cypress.DOCS
Log inRegister
Cypress Docs
Developers

De-listing

Pause, cancel, or report sold-elsewhere — and what happens when a deal is already in progress.

TL;DRAI summary

This chapter explains how to take a vehicle off the market on Cypress. You can pause a listing temporarily, cancel it if you are done selling here, or mark it as sold elsewhere. The actions you take depend on why you are removing the vehicle and its current selling status.

Dive deeper:

Taking a vehicle off market means one of three different things. Say which — each has its own endpoint, its own semantics, and its own events.

The three intents

IntentCallResult
Pause — coming backPATCH /listings/{id} {"status":"PAUSED"}Off market; its open offers are withdrawn and their buyers told, as a pause in the app does. Resume with {"status":"ACTIVE"}. Events: LISTINGS.PAUSED / RESUMED
Cancel — done selling hereDELETE /listings/{id}As a seller's delist in the app. No open offer and no sale in progress: the vehicle is archived at once and the listing closes (204; LISTINGS.CANCELLED and VEHICLES.DISPOSITION.RESOLVED with automatic: true). An open offer or a sale in progress: staged for Cypress's review (202), the listing paused while it waits; the approval archives the vehicle (open offers withdrawn) and closes the listing (VEHICLES.DISPOSITION.STAGED now; LISTINGS.CANCELLED and RESOLVED with the decision). A listing whose vehicle is not on the market closes at once (204)
Sold elsewherePOST /vehicles/{id}/dispositionThe same rule: archived at once without an open offer or a sale in progress (200, archived: true; RESOLVED, automatic); otherwise staged for Cypress review (202), a live listing paused while it waits (STAGED → RESOLVED)

Changed in 1.5.0: the API's pause and cancel are the app's

A pause used to change only the statuses; it now withdraws the open offers and tells their buyers. A cancel used to archive a vehicle on the market at once; it is now reviewed by Cypress, like every seller's archive. While a cancel waits for that review, the listing is PAUSED and resuming it answers 409: the review resumes it (rejected, LISTINGS.RESUMED) or closes it (approved, LISTINGS.CANCELLED).

Changed in 1.8.0: Cypress reviews only when a buyer is involved

From 1.5.0 to 1.7.0 every seller archive waited for Cypress. Since 1.8.0, by any door (the app, an import, the API): a vehicle with no open offer and no sale in progress is archived at once, and so is planning stock; one with an open offer or a sale in progress still waits for a Cypress Manager, its listing paused meanwhile. A staged answer says why in reviewReason (OPEN_OFFERS or SALE_IN_PROGRESS). An archive applied at once is told as VEHICLES.DISPOSITION.RESOLVED with automatic: true, with no STAGED before it.

New in 1.8.0: let the next push say what left

When your system knows only that a unit is gone, not why, push your whole inventory with removeMissing=true: every active vehicle the push leaves out is taken off by the same rule, at once or after Cypress's review. See Keeping the whole inventory in step.

(Manheim dialect: offerings/…/actions/pause|resume, DELETE offerings/id/{id}, units/…/actions/sold_elsewhere — same semantics.)

Pausing, resuming and cancelling take ?dryRun=true (what would happen, nothing written) and an Idempotency-Key. A cancel also takes a Connect Cypress token (since 1.5.0): an app acting for a person may cancel, but an agent may not take a car off market (403 PEOPLE_ONLY, with vehicleId): it pauses the listing and asks a person.

On Cypress Operate, pause_vehicle, resume_vehicle and delist_vehicle are the app's own buttons, run as you (see The app's actions): a pause also withdraws the car's open offers and tells the buyers, and a seller's delist follows the app's rule (at once, or Cypress's review when a buyer is involved). An agent may pause; resuming and delisting are a person's (PEOPLE_ONLY, with the vehicle's link). The same actions are on REST under /api/v1/vehicles/{id}/pause, /resume and /delist.

Undo an archive made at once

Archived the wrong car? Within 24 hours of an archive your organization made at once, POST /api/v1/vehicles/{id}/archive/undo (undo_vehicle_archive) puts it back on the status it had: a listed car is listed again at its last price. Offers the archive withdrew are not revived. It takes ?dryRun=true (the status it would go back to) and an optional reason for the activity log, and is told as VEHICLES.UPDATED with toStatus. Since 1.9.0.

It is refused (409 CONFLICT) once Cypress reviewed the archive (it went to review, or Cypress recorded a decision), after 24 hours, or when the vehicle changed since (relisted, restored, archived again, a request filed on it): ask your account manager then. A person's act: your fleet managers and admins, through an app acting for them; never an agent's or an API key's.

A day in a fleet system's life

Nightly sync finds 3 units gone from the source inventory: one sold at a local auction (→ disposition), one heading back on rent next month (→ pause), one scrapped (→ cancel). The two without offers are archived at once; one with an open offer would wait for Cypress. Three different facts, three different calls — and none of them yanks a car out from under a buyer.

Mid-deal conflicts

A removal against a vehicle that is UNDER_OFFER or deeper in a deal is a conflict, not a command:

your removalvehicle mid-deal202staged update requestDISPOSITION.STAGEDreviewedCypress decidesdeal wins, or removal winsDISPOSITION.RESOLVED (approved / rejected)

This is the same review process Cypress applies to its own bulk-import changes — an active negotiation is never yanked out from under a buyer by an API call. A vehicle with an open offer goes the same way: staged (202), a live listing paused while it waits. Without one, a cancel archives it at once (204), and a listing whose vehicle is not on the market simply closes (204).

Already SOLD on Cypress? Removal answers 409 — completed sales are permanent record.

A vehicle the fleet keeps in Operation or Planning isn't on the API at all: pause, resume, repricing and sold-elsewhere on it answer 409 with "code": "PLANNING_STOCK". The one exception is cancel — a listing left open on a vehicle that was moved back to Planning can still be cancelled, so you can clean it up. Taking such a vehicle out of the fleet happens in Cypress, not through these calls — see Errors.