Skip to content

Uninstall product from car

DELETE
/installations
curl --request DELETE \
--url https://api-uat.flinkey.de/v3/installations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Customer-ID: example' \
--header 'flinkey-API-Key: <flinkey-API-Key>' \
--data '{ "carId": 12345, "productId": 67890, "serialNumber": null, "uniqueId": null }'

Purpose

Uninstall a product from a car in the selected customer context.

A product represents a flinkey hardware product.

A car is the API abstraction used for vehicle-related access flows.

This operation removes the link between a product and a car.

Use this operation for operational setup, replacement, correction or support workflows where an installed product must be removed from a vehicle record.

If a flinkey Box is uninstalled, assignments of the car are also removed.

The assignment deletion operations are processed asynchronously and their results are delivered through webhook.

When to use this operation

Use this operation when the partner backend or operational backend needs to uninstall a product from a car.

Typical situations:

  • removing a flinkey product from a car,
  • replacing hardware,
  • correcting product-to-car setup after reconciliation,
  • preparing a product for reassignment,
  • cleaning up an incorrect installation,
  • operational support or workshop workflows.

Before calling this operation, the partner backend should have resolved:

  • the correct Customer-ID,
  • the flinkey carId,
  • the product identifier,
  • whether the product is currently assigned to the given car,
  • whether active assignments exist for the car,
  • whether assignment deletion side effects are acceptable for the current workflow.

For standard access flows, assignments are created between User and Car.

Product uninstallation is an operational setup step and should not be treated as an access permission update only.

Validation notes

  • The controlled PROD request returned 204 No Content with an empty response body.
  • Removal was confirmed in the Admin Portal.
  • Get products of car subsequently returned 404 Not Found with "No products are assigned to this car.".
  • Get product still returned the unchanged product, now with carId: null.
  • Existing assignments were not treated as a blocker in the controlled test client. Assignment removal remains a documented possible asynchronous side effect and must be observed in partner workflows where assignment state matters.

Async behavior

Partly asynchronous.

The product uninstallation request returns 204 NO CONTENT when the uninstallation operation was accepted or completed successfully.

If a flinkey Box is uninstalled, assignments of the car are also removed.

Those assignment deletion operations are asynchronous.

The partner backend must process the related assignment deletion webhook results before treating assignment state as final.

Webhook result

Yes.

This operation can produce assignment deletion result webhooks when assignments of the car are removed as part of uninstalling a flinkey Box.

The product uninstallation itself is represented by the API response.

The related assignment deletion results are represented by webhook events.

Security notes

Never log:

  • flinkey-API-Key,
  • bearer token,
  • full request headers.

Product, car and assignment identifiers are environment-specific.

Do not mix UAT and PROD product IDs, serial numbers, unique IDs, car IDs or assignment IDs.

Use placeholders in documentation, examples, screenshots and AI prompts.

For standard partner integrations, the mobile app must not receive API Manager credentials, backend bearer tokens or the flinkey-API-Key.

Customer-ID
required
string

Customer database ID

Media typeapplication/json
object
carId
required

Database ID of the car

number
productId

Database ID of the product

number | null
serialNumber

Product serial number

string | null
uniqueId

Unique product identifier

string | null
Example
{
"carId": 12345,
"productId": 67890,
"serialNumber": null,
"uniqueId": null
}

Product was uninstalled from the car successfully

Invalid carId or no valid product identifier was provided

Recommended handling: Check carId, productId, serialNumber and uniqueId

Invalid subscription key or missing / invalid access token

Recommended handling: Check flinkey-API-Key, bearer token and environment configuration

API Manager, car or product was not found

Recommended handling: Check credentials, Customer-ID, car assignment and product identifier

Product cannot be uninstalled because of current installation state

Recommended handling: Check whether the product is already uninstalled or whether the product is not assigned to the given car

Request content type is missing or incorrect

Recommended handling: Ensure Content-Type: application/json is used

Server-side error

Recommended handling: Retry later if appropriate and escalate if persistent