Autengo API API Reference

The Autengo API is organized around REST. Our API has predictable, resource-oriented URLs, and uses HTTP response codes to indicate API errors. We use built-in HTTP features, like HTTP authentication and HTTP verbs, which are understood by off-the-shelf HTTP clients. JSON is returned by all API responses.

The query string and its format for objects and arrays is not standardized. The most popular format is the use of LHS brackets. That's why we use this format too.

To stringify query params (especially objects and arrays) we recommend using the popular node package qs ( npm/qs) or make the api requests directly with http clients like axios ( npm/axios) that have qs implemented.

Example of the LHS brackets format:

str = qs.stringify({
  nested: {
    objects: {
      and: ['arrays', 'are'],
      not: 'standardized',
    }
  }
});

str = decodeURIComponent(str);

// ?nested[objects][and][]=arrays
// &nested[objects][and][]=are
// &nested[objects][not]=standardized
console.log(str);
API Endpoint
https://dev-stage.api.autengo.com/v3
Contact: dev@autengo.com
Request Content-Types: application/json
Response Content-Types: application/json
Schemes: https
Version: 3.0.0

Authentication

API Key

Provides API Key access to the API. Usage like 'X-Api-Key: apiKey'

type
apiKey
name
X-Api-Key
in
header
curl \
  --request GET \
  --url 'https://dev-stage.api.autengo.com/v3/...' \
  --header 'Authorization: JWT eyJhbGc...' \
  --header 'X-Api-Key: foobar'

JWT

Provides access to user related information

type
basic
name
Authorization
in
header

Internationalization

We support internationalization aka i18n with the Accept-Language header. Supported languages are de and en. Default is de. It transforms translatable string values to an object with the properties key and text. The property key is the actual value of the field and it is also the value that should be in the filter. The property text is depending on the requested language and of corse the actual value of the field.

Example of a transformed value:

{
  "driveType": {
    "key": "rear",
    "text": "Heckantrieb"
  }
}
curl \
  --request GET \
  --url 'https://dev-stage.api.autengo.com/v3/...' \
  --header 'Accept-Language: en'

Pagination

All top-level API resources have support for bulk fetches via "list" API methods. For instance, you can list vehicles, list customers, and list opportunities. These list API methods share a common structure, taking at least two parameters: limit and offset.

The response for the top-level API resources is always structured like this:

{
  list: Array,
  total: Integer,
  offset: Integer,
  limit: Integer,
}
api.get('/resource', {
  params: {
    offset: 50,
    limit: 25,
  },
});

Order

You can order the list by a specific field and direction in the query params. Order is optional and defaults to created desc. If u want to specify an order both field and dir are required.

{
  order: {
    field: 'created', // Valid values depending on the requested resource
    dir: 'desc', // or 'asc'
  },
}
api.get('/resource', {
  params: {
    order: {
      field: 'created',
      dir: 'desc',
    },
  },
});

Filter and Search

The API provides a free text search param to search the list of vehicles. It is only a basic search and does not support complex queries. The fields getting searched depending on the requested resource. The vehicle resource for example supports the fields: makeName, modelName, modelVersion and much more.

{
  search: 'xDrive',
}

For filtering the list of the resource the operators and and or can be used. Both operators accept an object with more details. Those objects possible keys depends on the requested resource. The value can be a primitive or an array of primitives.

For example:

{
  and: {
    vehicleState: 'inventory',
  },
  or: {
    colorId: [3, 4, 5],
  },
}

It is possible to prepend a primitive with a comparison operator using a | to separate operator and value. Allowed comparison operators are =, <>, <, <=, > and >=. The default comparison operator is =.

This allows to filter by a range for example:

{
  and: {
    kilometers: ['>=|25000', '<=|250000'],
  },
}

To apply a filter based on the first registration date, a date format is utilized. For instance, to filter vehicles that were first registered in 2017, the following filter should be used:

{
  and: {
    firstRegistration: ['>=|2017-01-01', '<|2018-01-01']
  },
}

You can apply filter for the list in conjunction with search, limit and offset.

api.get('/resource', {
  params: {
    search: 'titanium',
    and: {
      vehicleState: 'inventory',
      makeName: 'Ford',
      kilometers: ['>=|25000', '<=|250000'],
      firstRegistration: ['>=|2017-01-01', '<|2018-01-01']
    },
    or: {
      colorId: [3, 4, 5],
    },
  },
});

Vehicle

Vehicle methods provide access to information and operations relating to a vehicle

GET /vehicle

GET /vehicle

Request a list of vehicles. Control the result by using Order, Pagination, Filter and Search.

Columns that can be used for Order and Filter are created, updated, makeId, makeName, modelId, modelName, modelVersion, vehicleState, firstRegistration, constructionDate, kilometers, vehicleTypeId, trimLine, modelRange, climatisationType, conditionType, powerKw, cubicCapacity, doorCount, seatCount, pollutionBadge, colorId, isMetallicColor, airbagType, interiorType, interiorColorId, fuelType, fuelDetailType, transmissionType, isDamaged, hadAccidentDamage, isDrivable, hasFullServiceHistory, cylinders, price, isPluginHybrid, isE10Enabled, driveType and previousOwnerCount.

api.get('/vehicle', {
  params: {
    search: 'titanium',
    and: {
      vehicleState: 'inventory',
      makeName: 'Ford',
      kilometers: ['>=|25000', '<=|250000'],
      firstRegistration: ['>=|2017-01-01', '<|2018-01-01']
    },
    or: {
      colorId: [3, 4, 5],
    },
    order: {
      field: 'created',
      dir: 'desc',
    },
    offset: 0,
    limit: 25,
  },
});
search: string
in query

A search query that filters the list of vehicles

and: object
in query

Apply an and filter for the list.

or: object
in query

Apply an or filter for the list.

order.field: string
in query

Name of the column to order the list by

order.dir: string asc, desc
in query

Order direction

offset: integer
in query

The number of items to skip before starting to collect the vehicles

limit: integer x ≤ 100
in query

The number of items to collect

200 OK

An array of vehicle objects

400 Bad Request

Invalid request

Response Content-Types: application/json
Response Example (200 OK)
{
  "total": 150,
  "limit": 25,
  "offset": 25,
  "list": [
    {
      "sellingId": "AIQWXW",
      "internalId": "MY-CUSTOM-ID",
      "branchId": 12345,
      "makeName": "Ford",
      "modelName": "Focus",
      "modelVersion": "GTI 1.6",
      "sourceType": "leasingReturn",
      "vehicleState": {
        "key": "inventory",
        "text": "Im Bestand"
      },
      "description": "New car",
      "firstRegistration": "2007-05-19",
      "kilometers": 120000,
      "vehicleTypeId": {
        "key": 6,
        "text": "Limousine"
      },
      "climatisationType": {
        "key": "automaticClimateControl",
        "text": "Auto"
      },
      "conditionType": {
        "key": "used",
        "text": "Gebraucht"
      },
      "vin": "WVWZZZ1KZCW162691",
      "powerKw": 185,
      "cubicCapacity": 999,
      "doorCount": 5,
      "seatCount": 5,
      "pollutionBadge": {
        "key": 4,
        "text": "Grün"
      },
      "emissionClass": {
        "key": 9,
        "text": "Euro 6d-Temp"
      },
      "colorId": {
        "key": 7,
        "text": "Blau"
      },
      "manufacturerColorName": "blue-ish",
      "isMetallicColor": false,
      "airbagType": {
        "key": "driverAirbag",
        "text": "Fahrerairbag"
      },
      "interiorType": {
        "key": "fullLeather",
        "text": "Vollleder"
      },
      "interiorColorId": {
        "key": 3,
        "text": "Beige"
      },
      "fuelType": {
        "key": "gasoline",
        "text": "Benzin"
      },
      "fuelDetailType": {
        "key": "diesel",
        "text": "Diesel"
      },
      "transmissionType": {
        "key": "semiAutomatic",
        "text": "Halbautomatik"
      },
      "isDamaged": false,
      "hadAccidentDamage": false,
      "isDrivable": true,
      "nextInspection": "2017-05",
      "isInspectionNew": false,
      "lastService": "2017-05-19",
      "hasFullServiceHistory": true,
      "tyreType": {
        "key": "allSeasonTyres",
        "text": "Ganzjahresreifen"
      },
      "tyreBrand": "Yamaha",
      "tyreTreadL": 1.2,
      "tyreTreadR": 1.2,
      "tyreTreadBL": 1.2,
      "tyreTreadBR": 1.2,
      "warrantyExpiry": "2017-05-19",
      "tsn": "TSN",
      "hsn": 1234,
      "gears": 6,
      "cylinders": 6,
      "countryId": "DE",
      "deliveryDate": "2017-05-19",
      "deliveryPeriod": "TODO",
      "isNonSmoker": true,
      "particulateFilter": false,
      "isBioDieselSuitable": false,
      "isVegetableOilSuitable": false,
      "isPluginHybrid": false,
      "isE10Enabled": false,
      "weight": 1232,
      "hasSparewheel": false,
      "driveType": {
        "key": "rear",
        "text": "Heckantrieb"
      },
      "created": "2018-08-07 15:47:17",
      "updated": "2018-08-07 15:47:17",
      "previousOwnerCount": 2,
      "isWarrantyGranted": true,
      "isNetPrice": "NO",
      "isPriceNegotiable": "NO",
      "dealerPrice": 13444,
      "equipment": "array",
      "damages": "array",
      "documents": "array",
      "ads": "array",
      "priceExport": 3456.12,
      "recommendedRetailPrice": 3456.12,
      "priceYard": 3456.12,
      "priceOverpass": 3456.12,
      "slidingDoor": {
        "key": "slidingDoorBoth",
        "text": "Schiebetüren"
      },
      "emissionsCombinedCo2Class": "A",
      "emissionsDischargedCo2Class": "G",
      "co2EmissionCombined": 108,
      "consumptionFuelCombined": 4.8,
      "consumptionFuelCity": 4.5,
      "consumptionFuelSuburban": 4.5,
      "consumptionFuelRural": 4.2,
      "consumptionFuelHighway": 5.5,
      "consumptionPowerCombined": 22.8,
      "co2EmissionCombinedWeighted": 34,
      "consumptionFuelCombinedWeighted": 4.1,
      "consumptionPowerCombinedWeighted": 15.5,
      "co2EmissionsDischarged": 108,
      "consumptionPowerCity": 22.8,
      "consumptionPowerSuburban": 22.8,
      "consumptionPowerRural": 22.8,
      "consumptionPowerHighway": 22.8,
      "electricRangePluginHybrid": 50,
      "energieCostFuelPrice": 1.5,
      "energieCostPowerPrice": 0.25,
      "energieCostConsumptionPriceYear": 1500,
      "energieCostTax": 150,
      "energieCostConsumptionCosts": 1500,
      "energieCostCo2CostsLow": 150,
      "energieCostCo2CostsHigh": 150,
      "energieCostCo2CostsMiddle": 150
    }
  ]
}

GET /vehicle/:sellingId

GET /vehicle/:sellingId

Request a vehicle by the sellingId.

api.get('/vehicle/AIQWXW');
200 OK

The requested vehicle object

type
object
400 Bad Request

Invalid request

Response Content-Types: application/json
Response Example (200 OK)
{
  "vehicle": {
    "sellingId": "AIQWXW",
    "internalId": "MY-CUSTOM-ID",
    "branchId": 12345,
    "makeName": "Ford",
    "modelName": "Focus",
    "modelVersion": "GTI 1.6",
    "sourceType": "leasingReturn",
    "vehicleState": {
      "key": "inventory",
      "text": "Im Bestand"
    },
    "description": "New car",
    "firstRegistration": "2007-05-19",
    "kilometers": 120000,
    "vehicleTypeId": {
      "key": 6,
      "text": "Limousine"
    },
    "climatisationType": {
      "key": "automaticClimateControl",
      "text": "Auto"
    },
    "conditionType": {
      "key": "used",
      "text": "Gebraucht"
    },
    "vin": "WVWZZZ1KZCW162691",
    "powerKw": 185,
    "cubicCapacity": 999,
    "doorCount": 5,
    "seatCount": 5,
    "pollutionBadge": {
      "key": 4,
      "text": "Grün"
    },
    "emissionClass": {
      "key": 9,
      "text": "Euro 6d-Temp"
    },
    "colorId": {
      "key": 7,
      "text": "Blau"
    },
    "manufacturerColorName": "blue-ish",
    "isMetallicColor": false,
    "airbagType": {
      "key": "driverAirbag",
      "text": "Fahrerairbag"
    },
    "interiorType": {
      "key": "fullLeather",
      "text": "Vollleder"
    },
    "interiorColorId": {
      "key": 3,
      "text": "Beige"
    },
    "fuelType": {
      "key": "gasoline",
      "text": "Benzin"
    },
    "fuelDetailType": {
      "key": "diesel",
      "text": "Diesel"
    },
    "transmissionType": {
      "key": "semiAutomatic",
      "text": "Halbautomatik"
    },
    "isDamaged": false,
    "hadAccidentDamage": false,
    "isDrivable": true,
    "nextInspection": "2017-05",
    "isInspectionNew": false,
    "lastService": "2017-05-19",
    "hasFullServiceHistory": true,
    "tyreType": {
      "key": "allSeasonTyres",
      "text": "Ganzjahresreifen"
    },
    "tyreBrand": "Yamaha",
    "tyreTreadL": 1.2,
    "tyreTreadR": 1.2,
    "tyreTreadBL": 1.2,
    "tyreTreadBR": 1.2,
    "warrantyExpiry": "2017-05-19",
    "tsn": "TSN",
    "hsn": 1234,
    "gears": 6,
    "cylinders": 6,
    "countryId": "DE",
    "deliveryDate": "2017-05-19",
    "deliveryPeriod": "TODO",
    "isNonSmoker": true,
    "particulateFilter": false,
    "isBioDieselSuitable": false,
    "isVegetableOilSuitable": false,
    "isPluginHybrid": false,
    "isE10Enabled": false,
    "weight": 1232,
    "hasSparewheel": false,
    "driveType": {
      "key": "rear",
      "text": "Heckantrieb"
    },
    "created": "2018-08-07 15:47:17",
    "updated": "2018-08-07 15:47:17",
    "previousOwnerCount": 2,
    "isWarrantyGranted": true,
    "isNetPrice": "NO",
    "isPriceNegotiable": "NO",
    "dealerPrice": 13444,
    "equipment": "array",
    "damages": "array",
    "documents": "array",
    "ads": "array",
    "priceExport": 3456.12,
    "recommendedRetailPrice": 3456.12,
    "priceYard": 3456.12,
    "priceOverpass": 3456.12,
    "slidingDoor": {
      "key": "slidingDoorBoth",
      "text": "Schiebetüren"
    },
    "emissionsCombinedCo2Class": "A",
    "emissionsDischargedCo2Class": "G",
    "co2EmissionCombined": 108,
    "consumptionFuelCombined": 4.8,
    "consumptionFuelCity": 4.5,
    "consumptionFuelSuburban": 4.5,
    "consumptionFuelRural": 4.2,
    "consumptionFuelHighway": 5.5,
    "consumptionPowerCombined": 22.8,
    "co2EmissionCombinedWeighted": 34,
    "consumptionFuelCombinedWeighted": 4.1,
    "consumptionPowerCombinedWeighted": 15.5,
    "co2EmissionsDischarged": 108,
    "consumptionPowerCity": 22.8,
    "consumptionPowerSuburban": 22.8,
    "consumptionPowerRural": 22.8,
    "consumptionPowerHighway": 22.8,
    "electricRangePluginHybrid": 50,
    "energieCostFuelPrice": 1.5,
    "energieCostPowerPrice": 0.25,
    "energieCostConsumptionPriceYear": 1500,
    "energieCostTax": 150,
    "energieCostConsumptionCosts": 1500,
    "energieCostCo2CostsLow": 150,
    "energieCostCo2CostsHigh": 150,
    "energieCostCo2CostsMiddle": 150
  }
}

GET /vehicle/reference/make

GET /vehicle/reference/make

Use this route to fetch all available makes

200 OK

A list of makes

type
object
Response Content-Types: application/json
Response Example (200 OK)
{
  "total": 150,
  "list": [
    {
      "makeId": 190,
      "makeName": "Audi"
    }
  ]
}

GET /vehicle/reference/make/:makeId/model

GET /vehicle/reference/make/:makeId/model

Use this route to fetch all available models for a given make

makeId: integer
in path

The ID of a make

200 OK

A list of models

type
object
Response Content-Types: application/json
Response Example (200 OK)
{
  "total": 150,
  "list": [
    {
      "modelId": 3813,
      "modelName": "A4"
    }
  ]
}

GET /vehicle/filter/values

GET /vehicle/filter/values

Use this route to fetch available filter values. The route can take a query param named fields.

Valid fields are makeId, modelId, vehicleTypeId, climatisationType, conditionType, fuelType, transmissionType, isPluginHybrid and driveType.

The value of fields defaults to ['makeId'].

api.get('/vehicle/filter/values', {
  params: {
    fields: ['makeId'],
  },
});
fields: string[]
in query

The fields for which the available filter values are requested

200 OK

Available filter values for the requested fields

type
object
400 Bad Request

Invalid request

Response Content-Types: application/json
Response Example (200 OK)
{
  "makeId": [
    123
  ]
}

Opportunity

POST /opportunity

POST /opportunity

Create an opportunity (lead) for a vehicle.

Customer post properties

Request Content-Types: application/json
Request Example
{
  "sellingId": "RQ5O9S",
  "requestText": "I'm interested in this vehicle. Please contact me.",
  "sourceType": 6,
  "customer": {
    "lastName": "Doe",
    "firstName": "John",
    "streetAddress": "123 Main St",
    "zipCode": "12345",
    "city": "Anytown",
    "phoneNumber": "555-1234",
    "email": "max.mustermann@example.org"
  }
}
200 OK

Success

type
object
400 Bad Request

Invalid request

404 Not Found

Not Found (vehicle)

Response Content-Types: application/json
Response Example (200 OK)
{
  "status": "success",
  "data": {
    "opportunityId": 3813
  }
}

Schema Definitions

FilterObject: object

The key references a property of the resource to filter on. The value can be any primitive or an array of primitives and getting compared to the actual value of the property.

It is possible to prepend a primitive with a comparison operator using a | to separate operator and value. Allowed comparison operators are =, <>, <, <=, > and >=. The default comparison operator is =.

Comparison operators comparing the given value to the actual value with the respective logic.

key: string

The key references a property of the resource to filter on

value: primitive | primitive[]

The value can be any primitive or an array of primitives

Example
{
  vehicleState: 'inventory',
  makeName: 'Ford',
  kilometers: ['>=|25000', '<=|250000'],
}

VehicleList: object

total: integer

The total number of vehicles in the db with the applied filter

limit: integer

The max. number of filtered vehicles returned in response

offset: integer

The skipped number of filtered vehicles not returned in response

list: Vehicle
Vehicle
Example
{
  "total": 150,
  "limit": 25,
  "offset": 25,
  "list": [
    {
      "sellingId": "AIQWXW",
      "internalId": "MY-CUSTOM-ID",
      "branchId": 12345,
      "makeName": "Ford",
      "modelName": "Focus",
      "modelVersion": "GTI 1.6",
      "sourceType": "leasingReturn",
      "vehicleState": {
        "key": "inventory",
        "text": "Im Bestand"
      },
      "description": "New car",
      "firstRegistration": "2007-05-19",
      "kilometers": 120000,
      "vehicleTypeId": {
        "key": 6,
        "text": "Limousine"
      },
      "climatisationType": {
        "key": "automaticClimateControl",
        "text": "Auto"
      },
      "conditionType": {
        "key": "used",
        "text": "Gebraucht"
      },
      "vin": "WVWZZZ1KZCW162691",
      "powerKw": 185,
      "cubicCapacity": 999,
      "doorCount": 5,
      "seatCount": 5,
      "pollutionBadge": {
        "key": 4,
        "text": "Grün"
      },
      "emissionClass": {
        "key": 9,
        "text": "Euro 6d-Temp"
      },
      "colorId": {
        "key": 7,
        "text": "Blau"
      },
      "manufacturerColorName": "blue-ish",
      "isMetallicColor": false,
      "airbagType": {
        "key": "driverAirbag",
        "text": "Fahrerairbag"
      },
      "interiorType": {
        "key": "fullLeather",
        "text": "Vollleder"
      },
      "interiorColorId": {
        "key": 3,
        "text": "Beige"
      },
      "fuelType": {
        "key": "gasoline",
        "text": "Benzin"
      },
      "fuelDetailType": {
        "key": "diesel",
        "text": "Diesel"
      },
      "transmissionType": {
        "key": "semiAutomatic",
        "text": "Halbautomatik"
      },
      "isDamaged": false,
      "hadAccidentDamage": false,
      "isDrivable": true,
      "nextInspection": "2017-05",
      "isInspectionNew": false,
      "lastService": "2017-05-19",
      "hasFullServiceHistory": true,
      "tyreType": {
        "key": "allSeasonTyres",
        "text": "Ganzjahresreifen"
      },
      "tyreBrand": "Yamaha",
      "tyreTreadL": 1.2,
      "tyreTreadR": 1.2,
      "tyreTreadBL": 1.2,
      "tyreTreadBR": 1.2,
      "warrantyExpiry": "2017-05-19",
      "tsn": "TSN",
      "hsn": 1234,
      "gears": 6,
      "cylinders": 6,
      "countryId": "DE",
      "deliveryDate": "2017-05-19",
      "deliveryPeriod": "TODO",
      "isNonSmoker": true,
      "particulateFilter": false,
      "isBioDieselSuitable": false,
      "isVegetableOilSuitable": false,
      "isPluginHybrid": false,
      "isE10Enabled": false,
      "weight": 1232,
      "hasSparewheel": false,
      "driveType": {
        "key": "rear",
        "text": "Heckantrieb"
      },
      "created": "2018-08-07 15:47:17",
      "updated": "2018-08-07 15:47:17",
      "previousOwnerCount": 2,
      "isWarrantyGranted": true,
      "isNetPrice": "NO",
      "isPriceNegotiable": "NO",
      "dealerPrice": 13444,
      "equipment": "array",
      "damages": "array",
      "documents": "array",
      "ads": "array",
      "priceExport": 3456.12,
      "recommendedRetailPrice": 3456.12,
      "priceYard": 3456.12,
      "priceOverpass": 3456.12,
      "slidingDoor": {
        "key": "slidingDoorBoth",
        "text": "Schiebetüren"
      },
      "emissionsCombinedCo2Class": "A",
      "emissionsDischargedCo2Class": "G",
      "co2EmissionCombined": 108,
      "consumptionFuelCombined": 4.8,
      "consumptionFuelCity": 4.5,
      "consumptionFuelSuburban": 4.5,
      "consumptionFuelRural": 4.2,
      "consumptionFuelHighway": 5.5,
      "consumptionPowerCombined": 22.8,
      "co2EmissionCombinedWeighted": 34,
      "consumptionFuelCombinedWeighted": 4.1,
      "consumptionPowerCombinedWeighted": 15.5,
      "co2EmissionsDischarged": 108,
      "consumptionPowerCity": 22.8,
      "consumptionPowerSuburban": 22.8,
      "consumptionPowerRural": 22.8,
      "consumptionPowerHighway": 22.8,
      "electricRangePluginHybrid": 50,
      "energieCostFuelPrice": 1.5,
      "energieCostPowerPrice": 0.25,
      "energieCostConsumptionPriceYear": 1500,
      "energieCostTax": 150,
      "energieCostConsumptionCosts": 1500,
      "energieCostCo2CostsLow": 150,
      "energieCostCo2CostsHigh": 150,
      "energieCostCo2CostsMiddle": 150
    }
  ]
}

Vehicle: object

sellingId: string

ID of the vehicle

internalId: string

ID given by the dealer

branchId: integer

Id of the branch the vehicle belongs

makeName: string
modelName: string
modelVersion: string
sourceType: string repurchased, trade-in, factoryCar, leasingReturn
vehicleState: object
key: string incoming, inventory, sold
text: string
description: string
firstRegistration: string (YYYY-MM-DD)
kilometers: number
vehicleTypeId: object
key: integer 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
text: string
climatisationType: object
key: string none, airConditioning, automaticClimateControl, automaticClimateControl2, automaticClimateControl3, automaticClimateControl4
text: string
conditionType: object
key: string new, used, employeesCar, classic, demonstration, dayRegistration
text: string
vin: string
powerKw: number
cubicCapacity: number
doorCount: number
seatCount: number
pollutionBadge: object
key: number 1, 2, 3, 4, 5
text: string
emissionClass: object
key: number 1, 2, 3, 4, 5, 6, 7, 8, 9
text: string
colorId: object
key: integer 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
text: string
manufacturerColorName: string
isMetallicColor: boolean
airbagType: object
key: string driverAirbag, frontAirbag, driverSideAirbag, driverSideOtherAirbag
text: string
interiorType: object
key: string alcantara, cloth, fullLeather, partialLeather, velour, other
text: string
interiorColorId: object
key: integer 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
text: string
fuelType: object
key: string cng, diesel, electric, electricDiesel, electricGasoline, ethanol, gasoline, hydrogen, lpg
text: string
fuelDetailType: object
key: string lpg, normalGasoline91, super95, superPlus98, normalGasolineE1091, superE1095, superPlusE1098, diesel, biodiesel, vegetableOil, cngH, cngL, bioCng, ethanol85, hydrogen, electric
text: string
transmissionType: object
key: string automatic, manual, semiAutomatic
text: string
isDamaged: boolean
hadAccidentDamage: boolean
isDrivable: boolean
nextInspection: string
isInspectionNew: boolean
lastService: string
hasFullServiceHistory: boolean
tyreType: object
key: string summerTyres, winterTyres, allSeasonTyres
text: string
tyreBrand: string
tyreTreadL: string
tyreTreadR: string
tyreTreadBL: string
tyreTreadBR: string
warrantyExpiry: string (YYYY-MM-DD)
tsn: string
hsn: number
gears: number
cylinders: number
countryId: string
deliveryDate: string
deliveryPeriod: string
isNonSmoker: boolean
particulateFilter: boolean
isBioDieselSuitable: boolean
isVegetableOilSuitable: boolean
isPluginHybrid: boolean
isE10Enabled: boolean
weight: number
hasSparewheel: boolean
driveType: object
key: string front, rear, all, other
text: string
created: datetime

Timestamp vehicle was added in DB

updated: datetime

Timestamp vehicle was changed

previousOwnerCount: number
isWarrantyGranted: boolean
isNetPrice: boolean
isPriceNegotiable: boolean
dealerPrice: number
equipment: array
damages: array
documents: array
ads: array
priceExport: number
recommendedRetailPrice: number
priceYard: number
priceOverpass: number
slidingDoor: object
key: string slidingDoorRight, slidingDoorLeft, slidingDoorBoth
text: string
emissionsCombinedCo2Class: string A, B, C, D, E, F, G
emissionsDischargedCo2Class: string A, B, C, D, E, F, G
co2EmissionCombined: number
consumptionFuelCombined: number
consumptionFuelCity: number
consumptionFuelSuburban: number
consumptionFuelRural: number
consumptionFuelHighway: number
consumptionPowerCombined: number
co2EmissionCombinedWeighted: number
consumptionFuelCombinedWeighted: number
consumptionPowerCombinedWeighted: number
co2EmissionsDischarged: number
consumptionPowerCity: number
consumptionPowerSuburban: number
consumptionPowerRural: number
consumptionPowerHighway: number
electricRangePluginHybrid: number
energieCostFuelPrice: number
energieCostPowerPrice: number
energieCostConsumptionPriceYear: number
energieCostTax: number
energieCostConsumptionCosts: number
energieCostCo2CostsLow: number
energieCostCo2CostsHigh: number
energieCostCo2CostsMiddle: number
Example
{
  "sellingId": "AIQWXW",
  "internalId": "MY-CUSTOM-ID",
  "branchId": 12345,
  "makeName": "Ford",
  "modelName": "Focus",
  "modelVersion": "GTI 1.6",
  "sourceType": "leasingReturn",
  "vehicleState": {
    "key": "inventory",
    "text": "Im Bestand"
  },
  "description": "New car",
  "firstRegistration": "2007-05-19",
  "kilometers": 120000,
  "vehicleTypeId": {
    "key": 6,
    "text": "Limousine"
  },
  "climatisationType": {
    "key": "automaticClimateControl",
    "text": "Auto"
  },
  "conditionType": {
    "key": "used",
    "text": "Gebraucht"
  },
  "vin": "WVWZZZ1KZCW162691",
  "powerKw": 185,
  "cubicCapacity": 999,
  "doorCount": 5,
  "seatCount": 5,
  "pollutionBadge": {
    "key": 4,
    "text": "Grün"
  },
  "emissionClass": {
    "key": 9,
    "text": "Euro 6d-Temp"
  },
  "colorId": {
    "key": 7,
    "text": "Blau"
  },
  "manufacturerColorName": "blue-ish",
  "isMetallicColor": false,
  "airbagType": {
    "key": "driverAirbag",
    "text": "Fahrerairbag"
  },
  "interiorType": {
    "key": "fullLeather",
    "text": "Vollleder"
  },
  "interiorColorId": {
    "key": 3,
    "text": "Beige"
  },
  "fuelType": {
    "key": "gasoline",
    "text": "Benzin"
  },
  "fuelDetailType": {
    "key": "diesel",
    "text": "Diesel"
  },
  "transmissionType": {
    "key": "semiAutomatic",
    "text": "Halbautomatik"
  },
  "isDamaged": false,
  "hadAccidentDamage": false,
  "isDrivable": true,
  "nextInspection": "2017-05",
  "isInspectionNew": false,
  "lastService": "2017-05-19",
  "hasFullServiceHistory": true,
  "tyreType": {
    "key": "allSeasonTyres",
    "text": "Ganzjahresreifen"
  },
  "tyreBrand": "Yamaha",
  "tyreTreadL": 1.2,
  "tyreTreadR": 1.2,
  "tyreTreadBL": 1.2,
  "tyreTreadBR": 1.2,
  "warrantyExpiry": "2017-05-19",
  "tsn": "TSN",
  "hsn": 1234,
  "gears": 6,
  "cylinders": 6,
  "countryId": "DE",
  "deliveryDate": "2017-05-19",
  "deliveryPeriod": "TODO",
  "isNonSmoker": true,
  "particulateFilter": false,
  "isBioDieselSuitable": false,
  "isVegetableOilSuitable": false,
  "isPluginHybrid": false,
  "isE10Enabled": false,
  "weight": 1232,
  "hasSparewheel": false,
  "driveType": {
    "key": "rear",
    "text": "Heckantrieb"
  },
  "created": "2018-08-07 15:47:17",
  "updated": "2018-08-07 15:47:17",
  "previousOwnerCount": 2,
  "isWarrantyGranted": true,
  "isNetPrice": "NO",
  "isPriceNegotiable": "NO",
  "dealerPrice": 13444,
  "equipment": "array",
  "damages": "array",
  "documents": "array",
  "ads": "array",
  "priceExport": 3456.12,
  "recommendedRetailPrice": 3456.12,
  "priceYard": 3456.12,
  "priceOverpass": 3456.12,
  "slidingDoor": {
    "key": "slidingDoorBoth",
    "text": "Schiebetüren"
  },
  "emissionsCombinedCo2Class": "A",
  "emissionsDischargedCo2Class": "G",
  "co2EmissionCombined": 108,
  "consumptionFuelCombined": 4.8,
  "consumptionFuelCity": 4.5,
  "consumptionFuelSuburban": 4.5,
  "consumptionFuelRural": 4.2,
  "consumptionFuelHighway": 5.5,
  "consumptionPowerCombined": 22.8,
  "co2EmissionCombinedWeighted": 34,
  "consumptionFuelCombinedWeighted": 4.1,
  "consumptionPowerCombinedWeighted": 15.5,
  "co2EmissionsDischarged": 108,
  "consumptionPowerCity": 22.8,
  "consumptionPowerSuburban": 22.8,
  "consumptionPowerRural": 22.8,
  "consumptionPowerHighway": 22.8,
  "electricRangePluginHybrid": 50,
  "energieCostFuelPrice": 1.5,
  "energieCostPowerPrice": 0.25,
  "energieCostConsumptionPriceYear": 1500,
  "energieCostTax": 150,
  "energieCostConsumptionCosts": 1500,
  "energieCostCo2CostsLow": 150,
  "energieCostCo2CostsHigh": 150,
  "energieCostCo2CostsMiddle": 150
}

OpportunityPost: object

sellingId: string

SellingId of the vehicle requested

requestText: string (up to 16777215 chars)

Text from customer

sourceType: integer 6

Source of opportunity (6 = Alzura Shop)

customer: object
lastName: string

Last name of customer

firstName: string

First name of customer

streetAddress: string

Street address of customer

zipCode: string

Zip code of customer

city: string

City of customer

phoneNumber: string

Phone number of customer

email: string

E-Mail of customer

Example
{
  "sellingId": "RQ5O9S",
  "requestText": "I'm interested in this vehicle. Please contact me.",
  "sourceType": 6,
  "customer": {
    "lastName": "Doe",
    "firstName": "John",
    "streetAddress": "123 Main St",
    "zipCode": "12345",
    "city": "Anytown",
    "phoneNumber": "555-1234",
    "email": "max.mustermann@example.org"
  }
}