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://api.dev-stage.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://api.dev-stage.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

X-Authorization

Provides access to user related information using a session token

type
basic
name
X-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://api.dev-stage.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

Create an opportunity (lead) for a vehicle

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
  }
}

Contact

Contact endpoints provide every request related to customers

POST /contact

POST /contact

Create a new contact for the authenticated dealer.

Contact properties

Request Content-Types: application/json
Request Example
{
  "title": "Mr",
  "firstName": "Max",
  "lastName": "Mustermann",
  "streetAddress": "123 Main St",
  "zipCode": "12345",
  "city": "Anytown",
  "phoneNumber": "555-1234",
  "phoneNumberMobile": "555-5678",
  "email": "max.mustermann@example.org",
  "faxNumber": 1234567,
  "website": "https://example.org",
  "source": "walkIn",
  "customerRating": 5,
  "isPrivat": false,
  "isOptIn": false,
  "dateOfBirth": "1990-01-01",
  "licensePlate": "B-AB 1234",
  "facebook": "https://facebook.com/example",
  "linkedin": "https://linkedin.com/in/example",
  "xing": "https://xing.com/profile/example",
  "keyAccount": "Key Account A",
  "phoneNumberBusiness": "555-9999",
  "phoneNumberBusinessMobile": "555-9998",
  "faxNumberBusiness": "555-9997",
  "contactPersonBusiness": "Jane Doe",
  "websiteBusiness": "https://business.example.org",
  "emailBusiness": "business@example.org",
  "ustId": "DE123456789",
  "billingStreetAddress": "456 Billing St",
  "billingZipCode": "54321",
  "billingCity": "Billingtown",
  "titleOrDegree": "Dr.",
  "type": "customer",
  "position": "Manager",
  "country": "Germany",
  "billingCountry": "Germany",
  "taxId": "DE123456789",
  "iban": "DE89370400440532013000",
  "bic": "COBADEFFXXX",
  "salesTaxRegulation": "withTax",
  "notes": "Important customer notes",
  "customerNumber": "C-10001",
  "driverLicenseNumber": "D1234567",
  "driverLicenseIssuedBy": "Berlin",
  "driverLicenseDateOfIssue": "2010-05-10",
  "tecfacturaId": "D123456789"
}
201 Created

Contact created successfully

400 Bad Request

Invalid request

Response Content-Types: application/json
Response Example (201 Created)
{
  "status": "success",
  "statusText": "Contact created successfully",
  "data": {
    "contact": {
      "ID": 123,
      "title": "Mr",
      "firstName": "Max",
      "lastName": "Mustermann",
      "streetAddress": "123 Main St",
      "zipCode": "12345",
      "city": "Anytown",
      "phoneNumber": "555-1234",
      "phoneNumberMobile": "555-5678",
      "email": "max.mustermann@example.org",
      "faxNumber": 1234567,
      "website": "https://example.org",
      "source": "walkIn",
      "customerRating": 5,
      "isPrivat": false,
      "isOptIn": false,
      "dateOfBirth": "1990-01-01",
      "licensePlate": "B-AB 1234",
      "facebook": "https://facebook.com/example",
      "linkedin": "https://linkedin.com/in/example",
      "xing": "https://xing.com/profile/example",
      "keyAccount": "Key Account A",
      "phoneNumberBusiness": "555-9999",
      "phoneNumberBusinessMobile": "555-9998",
      "faxNumberBusiness": "555-9997",
      "contactPersonBusiness": "Jane Doe",
      "websiteBusiness": "https://business.example.org",
      "emailBusiness": "business@example.org",
      "ustId": "DE123456789",
      "billingStreetAddress": "456 Billing St",
      "billingZipCode": "54321",
      "billingCity": "Billingtown",
      "titleOrDegree": "Dr.",
      "type": "customer",
      "position": "Manager",
      "country": "Germany",
      "billingCountry": "Germany",
      "taxId": "DE123456789",
      "iban": "DE89370400440532013000",
      "bic": "COBADEFFXXX",
      "salesTaxRegulation": "withTax",
      "notes": "Important customer notes",
      "customerNumber": "C-10001",
      "driverLicenseNumber": "D1234567",
      "driverLicenseIssuedBy": "Berlin",
      "driverLicenseDateOfIssue": "2010-05-10",
      "tecfacturaId": "D123456789"
    }
  }
}

GET /contact/:id

GET /contact/:id

Request a contact by its ID.

id: integer
in path

The ID of the contact

The requested contact object

400 Bad Request

Invalid request

404 Not Found

Contact not found

Response Content-Types: application/json
Response Example (200 OK)
{
  "status": "success",
  "statusText": "Contact created successfully",
  "data": {
    "contact": {
      "ID": 123,
      "title": "Mr",
      "firstName": "Max",
      "lastName": "Mustermann",
      "streetAddress": "123 Main St",
      "zipCode": "12345",
      "city": "Anytown",
      "phoneNumber": "555-1234",
      "phoneNumberMobile": "555-5678",
      "email": "max.mustermann@example.org",
      "faxNumber": 1234567,
      "website": "https://example.org",
      "source": "walkIn",
      "customerRating": 5,
      "isPrivat": false,
      "isOptIn": false,
      "dateOfBirth": "1990-01-01",
      "licensePlate": "B-AB 1234",
      "facebook": "https://facebook.com/example",
      "linkedin": "https://linkedin.com/in/example",
      "xing": "https://xing.com/profile/example",
      "keyAccount": "Key Account A",
      "phoneNumberBusiness": "555-9999",
      "phoneNumberBusinessMobile": "555-9998",
      "faxNumberBusiness": "555-9997",
      "contactPersonBusiness": "Jane Doe",
      "websiteBusiness": "https://business.example.org",
      "emailBusiness": "business@example.org",
      "ustId": "DE123456789",
      "billingStreetAddress": "456 Billing St",
      "billingZipCode": "54321",
      "billingCity": "Billingtown",
      "titleOrDegree": "Dr.",
      "type": "customer",
      "position": "Manager",
      "country": "Germany",
      "billingCountry": "Germany",
      "taxId": "DE123456789",
      "iban": "DE89370400440532013000",
      "bic": "COBADEFFXXX",
      "salesTaxRegulation": "withTax",
      "notes": "Important customer notes",
      "customerNumber": "C-10001",
      "driverLicenseNumber": "D1234567",
      "driverLicenseIssuedBy": "Berlin",
      "driverLicenseDateOfIssue": "2010-05-10",
      "tecfacturaId": "D123456789"
    }
  }
}

PUT /contact/:id

PUT /contact/:id

Update an existing contact by its ID.

Contact properties to update

id: integer
in path

The ID of the contact to update

Request Content-Types: application/json
Request Example
{
  "title": "Mr",
  "firstName": "Max",
  "lastName": "Mustermann",
  "streetAddress": "123 Main St",
  "zipCode": "12345",
  "city": "Anytown",
  "phoneNumber": "555-1234",
  "phoneNumberMobile": "555-5678",
  "email": "max.mustermann@example.org",
  "faxNumber": 1234567,
  "website": "https://example.org",
  "source": "walkIn",
  "customerRating": 5,
  "isPrivat": false,
  "isOptIn": false,
  "dateOfBirth": "1990-01-01",
  "licensePlate": "B-AB 1234",
  "facebook": "https://facebook.com/example",
  "linkedin": "https://linkedin.com/in/example",
  "xing": "https://xing.com/profile/example",
  "keyAccount": "Key Account A",
  "phoneNumberBusiness": "555-9999",
  "phoneNumberBusinessMobile": "555-9998",
  "faxNumberBusiness": "555-9997",
  "contactPersonBusiness": "Jane Doe",
  "websiteBusiness": "https://business.example.org",
  "emailBusiness": "business@example.org",
  "ustId": "DE123456789",
  "billingStreetAddress": "456 Billing St",
  "billingZipCode": "54321",
  "billingCity": "Billingtown",
  "titleOrDegree": "Dr.",
  "type": "customer",
  "position": "Manager",
  "country": "Germany",
  "billingCountry": "Germany",
  "taxId": "DE123456789",
  "iban": "DE89370400440532013000",
  "bic": "COBADEFFXXX",
  "salesTaxRegulation": "withTax",
  "notes": "Important customer notes",
  "customerNumber": "C-10001",
  "driverLicenseNumber": "D1234567",
  "driverLicenseIssuedBy": "Berlin",
  "driverLicenseDateOfIssue": "2010-05-10",
  "tecfacturaId": "D123456789"
}

Contact updated successfully

400 Bad Request

Invalid request

404 Not Found

Contact not found

Response Content-Types: application/json
Response Example (200 OK)
{
  "status": "success",
  "statusText": "Contact created successfully",
  "data": {
    "contact": {
      "ID": 123,
      "title": "Mr",
      "firstName": "Max",
      "lastName": "Mustermann",
      "streetAddress": "123 Main St",
      "zipCode": "12345",
      "city": "Anytown",
      "phoneNumber": "555-1234",
      "phoneNumberMobile": "555-5678",
      "email": "max.mustermann@example.org",
      "faxNumber": 1234567,
      "website": "https://example.org",
      "source": "walkIn",
      "customerRating": 5,
      "isPrivat": false,
      "isOptIn": false,
      "dateOfBirth": "1990-01-01",
      "licensePlate": "B-AB 1234",
      "facebook": "https://facebook.com/example",
      "linkedin": "https://linkedin.com/in/example",
      "xing": "https://xing.com/profile/example",
      "keyAccount": "Key Account A",
      "phoneNumberBusiness": "555-9999",
      "phoneNumberBusinessMobile": "555-9998",
      "faxNumberBusiness": "555-9997",
      "contactPersonBusiness": "Jane Doe",
      "websiteBusiness": "https://business.example.org",
      "emailBusiness": "business@example.org",
      "ustId": "DE123456789",
      "billingStreetAddress": "456 Billing St",
      "billingZipCode": "54321",
      "billingCity": "Billingtown",
      "titleOrDegree": "Dr.",
      "type": "customer",
      "position": "Manager",
      "country": "Germany",
      "billingCountry": "Germany",
      "taxId": "DE123456789",
      "iban": "DE89370400440532013000",
      "bic": "COBADEFFXXX",
      "salesTaxRegulation": "withTax",
      "notes": "Important customer notes",
      "customerNumber": "C-10001",
      "driverLicenseNumber": "D1234567",
      "driverLicenseIssuedBy": "Berlin",
      "driverLicenseDateOfIssue": "2010-05-10",
      "tecfacturaId": "D123456789"
    }
  }
}

DELETE /contact/:id

DELETE /contact/:id

Delete a contact by its ID.

id: integer
in path

The ID of the contact to delete

200 OK

Contact deleted successfully

type
object
400 Bad Request

Invalid request

404 Not Found

Contact not found

Response Content-Types: application/json
Response Example (200 OK)
{
  "status": "success",
  "statusText": "Contact deleted successfully"
}

GET /contact/tecfactura/:tecfacturaId

GET /contact/tecfactura/:tecfacturaId

Request a contact by its TecFactura ID.

tecfacturaId: string
in path

The TecFactura ID of the contact

The requested contact object

400 Bad Request

Invalid request

404 Not Found

Contact not found

Response Content-Types: application/json
Response Example (200 OK)
{
  "status": "success",
  "statusText": "Contact created successfully",
  "data": {
    "contact": {
      "ID": 123,
      "title": "Mr",
      "firstName": "Max",
      "lastName": "Mustermann",
      "streetAddress": "123 Main St",
      "zipCode": "12345",
      "city": "Anytown",
      "phoneNumber": "555-1234",
      "phoneNumberMobile": "555-5678",
      "email": "max.mustermann@example.org",
      "faxNumber": 1234567,
      "website": "https://example.org",
      "source": "walkIn",
      "customerRating": 5,
      "isPrivat": false,
      "isOptIn": false,
      "dateOfBirth": "1990-01-01",
      "licensePlate": "B-AB 1234",
      "facebook": "https://facebook.com/example",
      "linkedin": "https://linkedin.com/in/example",
      "xing": "https://xing.com/profile/example",
      "keyAccount": "Key Account A",
      "phoneNumberBusiness": "555-9999",
      "phoneNumberBusinessMobile": "555-9998",
      "faxNumberBusiness": "555-9997",
      "contactPersonBusiness": "Jane Doe",
      "websiteBusiness": "https://business.example.org",
      "emailBusiness": "business@example.org",
      "ustId": "DE123456789",
      "billingStreetAddress": "456 Billing St",
      "billingZipCode": "54321",
      "billingCity": "Billingtown",
      "titleOrDegree": "Dr.",
      "type": "customer",
      "position": "Manager",
      "country": "Germany",
      "billingCountry": "Germany",
      "taxId": "DE123456789",
      "iban": "DE89370400440532013000",
      "bic": "COBADEFFXXX",
      "salesTaxRegulation": "withTax",
      "notes": "Important customer notes",
      "customerNumber": "C-10001",
      "driverLicenseNumber": "D1234567",
      "driverLicenseIssuedBy": "Berlin",
      "driverLicenseDateOfIssue": "2010-05-10",
      "tecfacturaId": "D123456789"
    }
  }
}

PUT /contact/tecfactura/:tecfacturaId

PUT /contact/tecfactura/:tecfacturaId

Update an existing contact by its TecFactura ID.

Contact properties to update

tecfacturaId: string
in path

The TecFactura ID of the contact to update

Request Content-Types: application/json
Request Example
{
  "title": "Mr",
  "firstName": "Max",
  "lastName": "Mustermann",
  "streetAddress": "123 Main St",
  "zipCode": "12345",
  "city": "Anytown",
  "phoneNumber": "555-1234",
  "phoneNumberMobile": "555-5678",
  "email": "max.mustermann@example.org",
  "faxNumber": 1234567,
  "website": "https://example.org",
  "source": "walkIn",
  "customerRating": 5,
  "isPrivat": false,
  "isOptIn": false,
  "dateOfBirth": "1990-01-01",
  "licensePlate": "B-AB 1234",
  "facebook": "https://facebook.com/example",
  "linkedin": "https://linkedin.com/in/example",
  "xing": "https://xing.com/profile/example",
  "keyAccount": "Key Account A",
  "phoneNumberBusiness": "555-9999",
  "phoneNumberBusinessMobile": "555-9998",
  "faxNumberBusiness": "555-9997",
  "contactPersonBusiness": "Jane Doe",
  "websiteBusiness": "https://business.example.org",
  "emailBusiness": "business@example.org",
  "ustId": "DE123456789",
  "billingStreetAddress": "456 Billing St",
  "billingZipCode": "54321",
  "billingCity": "Billingtown",
  "titleOrDegree": "Dr.",
  "type": "customer",
  "position": "Manager",
  "country": "Germany",
  "billingCountry": "Germany",
  "taxId": "DE123456789",
  "iban": "DE89370400440532013000",
  "bic": "COBADEFFXXX",
  "salesTaxRegulation": "withTax",
  "notes": "Important customer notes",
  "customerNumber": "C-10001",
  "driverLicenseNumber": "D1234567",
  "driverLicenseIssuedBy": "Berlin",
  "driverLicenseDateOfIssue": "2010-05-10",
  "tecfacturaId": "D123456789"
}

Contact updated successfully

400 Bad Request

Invalid request

404 Not Found

Contact not found

Response Content-Types: application/json
Response Example (200 OK)
{
  "status": "success",
  "statusText": "Contact created successfully",
  "data": {
    "contact": {
      "ID": 123,
      "title": "Mr",
      "firstName": "Max",
      "lastName": "Mustermann",
      "streetAddress": "123 Main St",
      "zipCode": "12345",
      "city": "Anytown",
      "phoneNumber": "555-1234",
      "phoneNumberMobile": "555-5678",
      "email": "max.mustermann@example.org",
      "faxNumber": 1234567,
      "website": "https://example.org",
      "source": "walkIn",
      "customerRating": 5,
      "isPrivat": false,
      "isOptIn": false,
      "dateOfBirth": "1990-01-01",
      "licensePlate": "B-AB 1234",
      "facebook": "https://facebook.com/example",
      "linkedin": "https://linkedin.com/in/example",
      "xing": "https://xing.com/profile/example",
      "keyAccount": "Key Account A",
      "phoneNumberBusiness": "555-9999",
      "phoneNumberBusinessMobile": "555-9998",
      "faxNumberBusiness": "555-9997",
      "contactPersonBusiness": "Jane Doe",
      "websiteBusiness": "https://business.example.org",
      "emailBusiness": "business@example.org",
      "ustId": "DE123456789",
      "billingStreetAddress": "456 Billing St",
      "billingZipCode": "54321",
      "billingCity": "Billingtown",
      "titleOrDegree": "Dr.",
      "type": "customer",
      "position": "Manager",
      "country": "Germany",
      "billingCountry": "Germany",
      "taxId": "DE123456789",
      "iban": "DE89370400440532013000",
      "bic": "COBADEFFXXX",
      "salesTaxRegulation": "withTax",
      "notes": "Important customer notes",
      "customerNumber": "C-10001",
      "driverLicenseNumber": "D1234567",
      "driverLicenseIssuedBy": "Berlin",
      "driverLicenseDateOfIssue": "2010-05-10",
      "tecfacturaId": "D123456789"
    }
  }
}

DELETE /contact/tecfactura/:tecfacturaId

DELETE /contact/tecfactura/:tecfacturaId

Delete a contact by its TecFactura ID.

tecfacturaId: string
in path

The TecFactura ID of the contact to delete

200 OK

Contact deleted successfully

type
object
400 Bad Request

Invalid request

404 Not Found

Contact not found

Response Content-Types: application/json
Response Example (200 OK)
{
  "status": "success",
  "statusText": "Contact deleted successfully"
}

Auth

Auth endpoints provide every request related to authentication

POST /auth/token

POST /auth/token

Issue a new token for the authenticated user.

Token properties

Request Content-Types: application/json
Request Example
{
  "dealerAlzuraId": 1234567890,
  "userAlzuraId": 1234567890
}
200 OK

The requested token object

400 Bad Request

Invalid request

Response Content-Types: application/json
Response Example (200 OK)
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
  "expires_in": 86400,
  "token_type": "Bearer",
  "scope": "AutengoApiV3"
}

GET /auth/refresh

GET /auth/refresh

Refresh a token for the authenticated user.

200 OK

The requested token object

400 Bad Request

Invalid request

Response Content-Types: application/json
Response Example (200 OK)
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
  "expires_in": 86400,
  "token_type": "Bearer",
  "scope": "AutengoApiV3"
}

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, 10
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"
  }
}

Contact: object

ID: integer

ID of the contact. Use this ID to update the contact.

title: string Mr, Mrs

Title

firstName: string

First name of the contact

lastName: string

Last name of the contact

streetAddress: string

Street address

zipCode: string (up to 16 chars)

Zip code

city: string

City

phoneNumber: string

Phone number

phoneNumberMobile: string

Mobile phone number

email: string

E-Mail

faxNumber: number

Fax number

website: string

Website

source: string walkIn, mail, platform, phone, offlineMarketing, onlineMarketing

Lead source

customerRating: number

Customer rating (1-5)

isPrivat: boolean

Private customer flag

isOptIn: boolean

Marketing opt-in flag

dateOfBirth: string (date)

Date of birth

licensePlate: string

License plate

facebook: string

Facebook profile

linkedin: string

LinkedIn profile

xing: string

Xing profile

keyAccount: string

Key account

phoneNumberBusiness: string

Business phone number

phoneNumberBusinessMobile: string

Business mobile phone number

faxNumberBusiness: string

Business fax number

contactPersonBusiness: string

Business contact person

websiteBusiness: string

Business website

emailBusiness: string

Business E-Mail

ustId: string

VAT ID

billingStreetAddress: string

Billing street address

billingZipCode: string (up to 16 chars)

Billing zip code

billingCity: string

Billing city

titleOrDegree: string (up to 64 chars)

Title or degree

type: string customer, supplier, partner, prospect

Contact type

position: string (up to 64 chars)

Position

country: string (up to 64 chars)

Country

billingCountry: string (up to 64 chars)

Billing country

taxId: string (up to 64 chars)

Tax ID

iban: string (up to 64 chars)

IBAN

bic: string (up to 64 chars)

BIC

salesTaxRegulation: string reverseCharge, taxless, withTax

Sales tax regulation

notes: string (up to 16777215 chars)

Notes

customerNumber: string (up to 64 chars)

Customer number

driverLicenseNumber: string (up to 100 chars)

Driver license number

driverLicenseIssuedBy: string

Driver license issued by

driverLicenseDateOfIssue: string (date)

Driver license date of issue

tecfacturaId: string

Tec Faktura ID of contact

Example
{
  "ID": 123,
  "title": "Mr",
  "firstName": "Max",
  "lastName": "Mustermann",
  "streetAddress": "123 Main St",
  "zipCode": "12345",
  "city": "Anytown",
  "phoneNumber": "555-1234",
  "phoneNumberMobile": "555-5678",
  "email": "max.mustermann@example.org",
  "faxNumber": 1234567,
  "website": "https://example.org",
  "source": "walkIn",
  "customerRating": 5,
  "isPrivat": false,
  "isOptIn": false,
  "dateOfBirth": "1990-01-01",
  "licensePlate": "B-AB 1234",
  "facebook": "https://facebook.com/example",
  "linkedin": "https://linkedin.com/in/example",
  "xing": "https://xing.com/profile/example",
  "keyAccount": "Key Account A",
  "phoneNumberBusiness": "555-9999",
  "phoneNumberBusinessMobile": "555-9998",
  "faxNumberBusiness": "555-9997",
  "contactPersonBusiness": "Jane Doe",
  "websiteBusiness": "https://business.example.org",
  "emailBusiness": "business@example.org",
  "ustId": "DE123456789",
  "billingStreetAddress": "456 Billing St",
  "billingZipCode": "54321",
  "billingCity": "Billingtown",
  "titleOrDegree": "Dr.",
  "type": "customer",
  "position": "Manager",
  "country": "Germany",
  "billingCountry": "Germany",
  "taxId": "DE123456789",
  "iban": "DE89370400440532013000",
  "bic": "COBADEFFXXX",
  "salesTaxRegulation": "withTax",
  "notes": "Important customer notes",
  "customerNumber": "C-10001",
  "driverLicenseNumber": "D1234567",
  "driverLicenseIssuedBy": "Berlin",
  "driverLicenseDateOfIssue": "2010-05-10",
  "tecfacturaId": "D123456789"
}

ContactPost: object

title: string Mr, Mrs

Title

firstName: string

First name of the contact

lastName: string

Last name of the contact

streetAddress: string

Street address

zipCode: string (up to 16 chars)

Zip code

city: string

City

phoneNumber: string

Phone number

phoneNumberMobile: string

Mobile phone number

email: string

E-Mail

faxNumber: number

Fax number

website: string

Website

source: string walkIn, mail, platform, phone, offlineMarketing, onlineMarketing

Lead source

customerRating: number

Customer rating (1-5)

isPrivat: boolean

Private customer flag

isOptIn: boolean

Marketing opt-in flag

dateOfBirth: string (date)

Date of birth

licensePlate: string

License plate

facebook: string

Facebook profile

linkedin: string

LinkedIn profile

xing: string

Xing profile

keyAccount: string

Key account

phoneNumberBusiness: string

Business phone number

phoneNumberBusinessMobile: string

Business mobile phone number

faxNumberBusiness: string

Business fax number

contactPersonBusiness: string

Business contact person

websiteBusiness: string

Business website

emailBusiness: string

Business E-Mail

ustId: string

VAT ID

billingStreetAddress: string

Billing street address

billingZipCode: string (up to 16 chars)

Billing zip code

billingCity: string

Billing city

titleOrDegree: string (up to 64 chars)

Title or degree

type: string customer, supplier, partner, prospect

Contact type

position: string (up to 64 chars)

Position

country: string (up to 64 chars)

Country

billingCountry: string (up to 64 chars)

Billing country

taxId: string (up to 64 chars)

Tax ID

iban: string (up to 64 chars)

IBAN

bic: string (up to 64 chars)

BIC

salesTaxRegulation: string reverseCharge, taxless, withTax

Sales tax regulation

notes: string (up to 16777215 chars)

Notes

customerNumber: string (up to 64 chars)

Customer number

driverLicenseNumber: string (up to 100 chars)

Driver license number

driverLicenseIssuedBy: string

Driver license issued by

driverLicenseDateOfIssue: string (date)

Driver license date of issue

tecfacturaId: string

Tec Faktura ID of contact

Example
{
  "title": "Mr",
  "firstName": "Max",
  "lastName": "Mustermann",
  "streetAddress": "123 Main St",
  "zipCode": "12345",
  "city": "Anytown",
  "phoneNumber": "555-1234",
  "phoneNumberMobile": "555-5678",
  "email": "max.mustermann@example.org",
  "faxNumber": 1234567,
  "website": "https://example.org",
  "source": "walkIn",
  "customerRating": 5,
  "isPrivat": false,
  "isOptIn": false,
  "dateOfBirth": "1990-01-01",
  "licensePlate": "B-AB 1234",
  "facebook": "https://facebook.com/example",
  "linkedin": "https://linkedin.com/in/example",
  "xing": "https://xing.com/profile/example",
  "keyAccount": "Key Account A",
  "phoneNumberBusiness": "555-9999",
  "phoneNumberBusinessMobile": "555-9998",
  "faxNumberBusiness": "555-9997",
  "contactPersonBusiness": "Jane Doe",
  "websiteBusiness": "https://business.example.org",
  "emailBusiness": "business@example.org",
  "ustId": "DE123456789",
  "billingStreetAddress": "456 Billing St",
  "billingZipCode": "54321",
  "billingCity": "Billingtown",
  "titleOrDegree": "Dr.",
  "type": "customer",
  "position": "Manager",
  "country": "Germany",
  "billingCountry": "Germany",
  "taxId": "DE123456789",
  "iban": "DE89370400440532013000",
  "bic": "COBADEFFXXX",
  "salesTaxRegulation": "withTax",
  "notes": "Important customer notes",
  "customerNumber": "C-10001",
  "driverLicenseNumber": "D1234567",
  "driverLicenseIssuedBy": "Berlin",
  "driverLicenseDateOfIssue": "2010-05-10",
  "tecfacturaId": "D123456789"
}

ContactResponse: object

status: string

Response status

statusText: string

Response status message

data: object
contact: Contact
Example
{
  "status": "success",
  "statusText": "Contact created successfully",
  "data": {
    "contact": {
      "ID": 123,
      "title": "Mr",
      "firstName": "Max",
      "lastName": "Mustermann",
      "streetAddress": "123 Main St",
      "zipCode": "12345",
      "city": "Anytown",
      "phoneNumber": "555-1234",
      "phoneNumberMobile": "555-5678",
      "email": "max.mustermann@example.org",
      "faxNumber": 1234567,
      "website": "https://example.org",
      "source": "walkIn",
      "customerRating": 5,
      "isPrivat": false,
      "isOptIn": false,
      "dateOfBirth": "1990-01-01",
      "licensePlate": "B-AB 1234",
      "facebook": "https://facebook.com/example",
      "linkedin": "https://linkedin.com/in/example",
      "xing": "https://xing.com/profile/example",
      "keyAccount": "Key Account A",
      "phoneNumberBusiness": "555-9999",
      "phoneNumberBusinessMobile": "555-9998",
      "faxNumberBusiness": "555-9997",
      "contactPersonBusiness": "Jane Doe",
      "websiteBusiness": "https://business.example.org",
      "emailBusiness": "business@example.org",
      "ustId": "DE123456789",
      "billingStreetAddress": "456 Billing St",
      "billingZipCode": "54321",
      "billingCity": "Billingtown",
      "titleOrDegree": "Dr.",
      "type": "customer",
      "position": "Manager",
      "country": "Germany",
      "billingCountry": "Germany",
      "taxId": "DE123456789",
      "iban": "DE89370400440532013000",
      "bic": "COBADEFFXXX",
      "salesTaxRegulation": "withTax",
      "notes": "Important customer notes",
      "customerNumber": "C-10001",
      "driverLicenseNumber": "D1234567",
      "driverLicenseIssuedBy": "Berlin",
      "driverLicenseDateOfIssue": "2010-05-10",
      "tecfacturaId": "D123456789"
    }
  }
}

TokenPost: object

dealerAlzuraId: number

Contact/Organization Alzura ID

userAlzuraId: number

User Alzura ID

Example
{
  "dealerAlzuraId": 1234567890,
  "userAlzuraId": 1234567890
}

TokenResponse: object

token: string

JWT Token

expires_in: number

Token lifetime in seconds from the time of issuance (86400 = 24 hours)

token_type: string

Authentication scheme — use as the prefix in the Authorization header (e.g. "X-Authorization: Bearer <token>")

scope: string

Scope of access granted by this token

Example
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c",
  "expires_in": 86400,
  "token_type": "Bearer",
  "scope": "AutengoApiV3"
}