Showing the damage on a body part before it is removedAll articles

Showing the damage on a body part before it is removed

A body part still on the vehicle is hard to photograph and easy to sell. This case shows how a recycler shows the damage before removing it — and what is not invented along the way.

Published: 2026-09-12Reading time: 5 mintapinomahub API & workflows
API & processesMarketplacesOE numberAPI

A recycler wants to sell a driver’s door before removing it: only what is sold gets removed. But the photos from the vehicle show the door at an angle, with neighbouring parts and background. A buyer wants to see the door in a standard view — with the damage it actually has.

Showing the damage on a body part before it is removedInput: photos of the still-mounted part and standard views of the same component 1. Describe the damage (POST /vision/damage/describe): report as text, in the language style chosen with textQuality 2. Transfer the damage (POST /vision/part/damage-transfer): assets per target view, findings with location and confidence, notTransferred for the rest 3. Grade the condition (POST /vision/part/quality): grade with reworkEffort and refinishEffort — or gradable false when the images cannot carry it 4. Build the marketplace data (GET /parts/oe/{oeNumber}/seo): content.ebayTitle, categoryId and itemSpecifics for the listing Output: a listing showing the visible damage — with images recognisable as a transfer Only what is visible is transferred. Anything that cannot be assigned reliably is listed in notTransferred and stays out of the image; hidden sides are never filled in.Showing the damage on a body part before it is removedInput: photos of the still-mounted part and standard views of the same component01Describe the damagePOST /vision/damage/describereport as text, in the language style chosen with textQuality02Transfer the damagePOST /vision/part/damage-transferassets per target view, findings with location and confidence, notTransferred for the rest03Grade the conditionPOST /vision/part/qualitygrade with reworkEffort and refinishEffort — or gradable false when the images cannot carry it04Build the marketplace dataGET /parts/oe/{oeNumber}/seocontent.ebayTitle, categoryId and itemSpecifics for the listingOutput: a listing showing the visible damage — with images recognisable as a transferOnly what is visible is transferred. Anything that cannot be assigned reliably is listed in notTransferred andstays out of the image; hidden sides are never filled in.
Four calls from the mounted part to the listing. Only what is visible in the photos is transferred.

The damage transfer carries only visible findings from the mounted part onto provided standard views of the same component. Anything that cannot be assigned reliably stays out of the image and is listed in notTransferred; hidden rear sides and unphotographed surfaces are not filled in. The result is an edited view, not a photo of the individual part — and must stay recognisable as such.

SurfaceRoles
HubVehicle recyclers, Parts trading

What this case requires

  • One to five photos of the mounted part. A mask can optionally be supplied per photo via partMaskUrl.
  • Standard views of the same component. Up to six target views; each names its view. Without a standard view of your own there is no target.
  • The part’s OE number. It carries the marketplace data; the damage transfer itself does not need it.
  • A label in the listing. The target views are edited representations; per asset provenance.requiredLabel names the label, and provenance.disclosureEmbedded is true.

The sequence

The table names the responsible call per stage and what exists afterwards. The reasoning for why a stage cannot be skipped follows below it.

The call chain of this use case
StageCallWhat exists afterwards
Describe the damagePOST /vision/damage/describereport as text, in the language style chosen with textQuality
Transfer the damagePOST /vision/part/damage-transferassets per target view, findings with location and confidence, notTransferred for the rest
Grade the conditionPOST /vision/part/qualitygrade with reworkEffort and refinishEffort — or gradable false when the images cannot carry it
Build the marketplace dataGET /parts/oe/{oeNumber}/seocontent.ebayTitle, categoryId and itemSpecifics for the listing

Why each stage is needed

  1. Describe the damage. POST /vision/damage/describe takes up to five imageUrls of the same damage and returns a report; textQuality chooses between notes, prose and expert. The text describes what is visible and is the basis for the item description.
  2. Transfer the damage. POST /vision/part/damage-transfer takes sources with the mounted part and targets with the standard views, each with view and optionally a mask. Back come assets per edited target view with provenance, findings with type, location, confidence and transferredToViews, and notTransferred. If the output cannot be verified reliably, the call answers with 422 and damage_not_transferable or image_edit_unverified.
  3. Grade the condition. POST /vision/part/quality returns grade, reworkEffort and refinishEffort with criteria and observations — or gradable false when the images cannot carry it. The grade belongs in the listing, the effort in the buyer’s calculation.
  4. Build the marketplace data. GET /parts/oe/{oeNumber}/seo returns content.ebayTitle, categoryId, itemSpecifics and keywords for the chosen marketplace. The title describes the part; the damage belongs in description and condition, not in an embellished headline.
Transfer visible damage from a mounted door
curl -X POST \
  -H 'X-Api-Key: <API_KEY>' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: tuer-links-schaden-0917' \
  -d '{"sources":[{"imageUrl":"https://example.com/tuer-montiert.jpg","view":"left"}],"targets":[{"imageUrl":"https://example.com/tuer-standard-links.jpg","view":"left"}],"partType":"Fahrertür links","quality":"standard","output":{"size":"1536x1024","format":"jpeg"}}' \
  'https://api.tapinomahub.com/vision/part/damage-transfer'

What you end up with

What remains is a listing for a part still on the vehicle, with edited standard views onto which visible findings were transferred, a condition grade and a description. It is removed once sold.

Where to find this in the documentation

The binding field lists, error codes and sample responses live in this surface’s OpenAPI contract at docs.tapinomahub.com (tapinoma-hub). All use cases arranged by surface and role: overview of the use cases.

Frequently asked

Does the transfer invent damage that cannot be seen?

No. Only visible findings are transferred. Anything that cannot be assigned reliably is listed in notTransferred and stays out of the image.

Are the target views photos of my part?

No. They are edited standard views with the transferred damage. provenance records the origin; declare them in the listing as representations.

What does a 422 response mean?

That the output could not be verified reliably: damage_not_transferable when the visible damage could not be reliably transferred to the standard views, or image_edit_unverified when the edited image could not be verified against the source, so no image is returned.