Only this pageAll pages
Powered by GitBook
1 of 44

🇲🇾 MY AutoGrab API Doc

AutoGrab Basics

Loading...

Loading...

Loading...

Loading...

Authentication

Loading...

Loading...

Vehicle Search

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Sourcing

Loading...

Loading...

Loading...

Loading...

Vehicle Data

Loading...

Loading...

Loading...

Loading...

Valuation

Loading...

Loading...

Loading...

Loading...

Loading...

Embeddable Products

Loading...

Loading...

Loading...

Loading...

REPORTS

Loading...

Loading...

Recapture

Loading...

Loading...

Insurance

Loading...

AutoGrab Developer Hub

Welcome to the developer hub, this is your reference to integrate with all aspects of the system. We've got guides and reference materials to support and accelerate your development.

You can explore our endpoints by searching or asking questions through the AI-powered doc system. See what product fits your user case by clicking a top-level grouping below.

Vehicle Search

Find vehicles in our comprehensive, regional databases using plain text search, aggregate field lookup & state vehicle registration.

Vehicle Valuation

Value new & used vehicles from our database, and calculate trade-in price & future value using our highly accurate pricing model.

Vehicle Data

Find descriptive data on vehicles to enrich your user experiences or power your backend workflows.

Vehicle History

View a vehicle's history as it moves through marketplaces over time.

Sourcing

The Sourcing API allows you to access lead and listing data from a variety of used car marketplaces.

Customer Recapture

Track your past customers and get notified when they list vehicles for sale online.

Embeddable Products

Explore products like Valuation Widget, Deal Gauge and more.

Reports

Generate PDF reports to show valuations or vehicle details in your own workflows.

Plain-text Search

Get results with a text string search

The Vehicle Search API allows you to search for matching vehicles by plain-text input. The API will return an array of vehicles and the confidence score in a match for that given vehicle.

The request requires a region, search string & API key. The default page length is 10, however, you can adjust this based on your requirements.

Example Payload

/v2/vehicles?region=au&search=2019 Volkswagen Polo S
{
    "success": true,
    "vehicles": [
        {
            "id": "4678970977026048",
            "legacy_id": "4678970977026048",
            "badge": "GTI",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo GTI AW Auto MY19",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Automatic",
            "wheelbase_type": null,
            "capacity_cc": 1984,
            "power_kw": 147,
            "torque_nm": 320,
            "range": 784,
            "num_cylinders": 4,
            "num_doors": 5,
            "num_gears": 6,
            "num_seats": 5,
            "model_year": "MY19",
            "release_month": 8,
            "release_year": 2018
        },
        {
            "id": "4960445953736704",
            "legacy_id": "4960445953736704",
            "badge": "70TSI Trendline",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo 70TSI Trendline AW Manual MY19",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Manual",
            "wheelbase_type": null,
            "capacity_cc": 999,
            "power_kw": 70,
            "torque_nm": 175,
            "range": 1000,
            "num_cylinders": 3,
            "num_doors": 5,
            "num_gears": 5,
            "num_seats": 5,
            "model_year": "MY19",
            "release_month": 8,
            "release_year": 2018
        },
        {
            "id": "5241920930447360",
            "legacy_id": "5241920930447360",
            "badge": "85TSI Comfortline",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo 85TSI Comfortline AW Manual MY19",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Manual",
            "wheelbase_type": null,
            "capacity_cc": 999,
            "power_kw": 85,
            "torque_nm": 200,
            "range": 909,
            "num_cylinders": 3,
            "num_doors": 5,
            "num_gears": 6,
            "num_seats": 5,
            "model_year": "MY19",
            "release_month": 8,
            "release_year": 2018
        },
        {
            "id": "5804870883868672",
            "legacy_id": "5804870883868672",
            "badge": "85TSI Comfortline",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo 85TSI Comfortline AW Auto MY19",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Automatic",
            "wheelbase_type": null,
            "capacity_cc": 999,
            "power_kw": 85,
            "torque_nm": 200,
            "range": 909,
            "num_cylinders": 3,
            "num_doors": 5,
            "num_gears": 7,
            "num_seats": 5,
            "model_year": "MY19",
            "release_month": 8,
            "release_year": 2018
        },
        {
            "id": "6367820837289984",
            "legacy_id": "6367820837289984",
            "badge": "70TSI Trendline",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo 70TSI Trendline AW Auto MY19",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Automatic",
            "wheelbase_type": null,
            "capacity_cc": 999,
            "power_kw": 70,
            "torque_nm": 175,
            "range": 930,
            "num_cylinders": 3,
            "num_doors": 5,
            "num_gears": 7,
            "num_seats": 5,
            "model_year": "MY19",
            "release_month": 8,
            "release_year": 2018
        },
        {
            "id": "4936256697925632",
            "legacy_id": "4936256697925632",
            "badge": "85TSI Comfortline",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo 85TSI Comfortline AW Auto MY20",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Automatic",
            "wheelbase_type": null,
            "capacity_cc": 999,
            "power_kw": 85,
            "torque_nm": 200,
            "range": 889,
            "num_cylinders": 3,
            "num_doors": 5,
            "num_gears": 7,
            "num_seats": 5,
            "model_year": "MY20",
            "release_month": 7,
            "release_year": 2019
        },
        {
            "id": "5217731674636288",
            "legacy_id": "5217731674636288",
            "badge": "85TSI Style",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo 85TSI Style AW Auto MY20",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Automatic",
            "wheelbase_type": null,
            "capacity_cc": 999,
            "power_kw": 85,
            "torque_nm": 200,
            "range": 889,
            "num_cylinders": 3,
            "num_doors": 5,
            "num_gears": 7,
            "num_seats": 5,
            "model_year": "MY20",
            "release_month": 7,
            "release_year": 2019
        },
        {
            "id": "5499206651346944",
            "legacy_id": "5499206651346944",
            "badge": "70TSI Trendline",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo 70TSI Trendline AW Auto MY20",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Automatic",
            "wheelbase_type": null,
            "capacity_cc": 999,
            "power_kw": 70,
            "torque_nm": 175,
            "range": 909,
            "num_cylinders": 3,
            "num_doors": 5,
            "num_gears": 7,
            "num_seats": 5,
            "model_year": "MY20",
            "release_month": 7,
            "release_year": 2019
        },
        {
            "id": "6062156604768256",
            "legacy_id": "6062156604768256",
            "badge": "85TSI Comfortline",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo 85TSI Comfortline AW Manual MY20",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Manual",
            "wheelbase_type": null,
            "capacity_cc": 999,
            "power_kw": 85,
            "torque_nm": 200,
            "range": 909,
            "num_cylinders": 3,
            "num_doors": 5,
            "num_gears": 6,
            "num_seats": 5,
            "model_year": "MY20",
            "release_month": 7,
            "release_year": 2019
        },
        {
            "id": "6343631581478912",
            "legacy_id": "6343631581478912",
            "badge": "GTI",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo GTI AW Auto MY20",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Automatic",
            "wheelbase_type": null,
            "capacity_cc": 1984,
            "power_kw": 147,
            "torque_nm": 320,
            "range": 784,
            "num_cylinders": 4,
            "num_doors": 5,
            "num_gears": 6,
            "num_seats": 5,
            "model_year": "MY20",
            "release_month": 7,
            "release_year": 2019
        },
        {
            "id": "6625106558189568",
            "legacy_id": "6625106558189568",
            "badge": "70TSI Trendline",
            "make": "Volkswagen",
            "model": "Polo",
            "series": "AW",
            "title": "2019 Volkswagen Polo 70TSI Trendline AW Manual MY20",
            "year": "2019",
            "body_config_type": null,
            "body_type": "Hatchback",
            "drive_type": "Front Wheel Drive",
            "engine_type": "Piston",
            "fuel_type": "Petrol",
            "transmission_type": "Manual",
            "wheelbase_type": null,
            "capacity_cc": 999,
            "power_kw": 70,
            "torque_nm": 175,
            "range": 976,
            "num_cylinders": 3,
            "num_doors": 5,
            "num_gears": 5,
            "num_seats": 5,
            "model_year": "MY20",
            "release_month": 7,
            "release_year": 2019
        }
    ],
    "total": 11,
    "confidence": "standard"
}

Example

Stock Feeds

Pipe your stock feed into a range of AutoGrab products.

Creating a stock feed

Your organisation will need at least one stock feed before uploading stock to the platform.

To create a stock feed, make a single POST request to the following Autograb API:

POST /v2/stock?region=au

Sample response:

{
    "success": true,
    "stockFeed": {
        "id": "ff7ff637-e4c1-40f2-9f9d-8f76d6c201fb",
        "display_name": "ff7ff637-e4c1-40f2-9f9d-8f76d6c201fb",
        "stock_feed_api_keys": [
            "YOUR_API_KEY"
        ]
    }
}

The stock feed ID is required to post stock items to AutoGrab. Please note the stock feed is linked to your API key, so you will need to use the same API key when posting stock items to the stock feed.

Stock item schema

Stock items must be posted in a format that complies with the Autograb Stock item schema:

{
  region: {
    type: 'string',
    required: true,
    description: 'The stock item region',
  },
  created_at: {
    type: 'string',
    required: true,
    description: 'ISO 8601 created at utc date and time string',
  },
  updated_at: {
    type: 'string',
    required: true,
    description: 'ISO 8601 updated at utc date and time string',
  },
  checked_at: {
    type: 'string',
    required: true,
    description: 'ISO 8601 checked at utc date and time string',
  },
  stocked_at: {
    type: 'string',
    required: true,
    description: 'ISO 8601 stocked at utc date and time string',
  },
  removed_at: {
    type: 'string',
    required: false,
    description:
      'ISO 8601 removed at utc date and time string, only to be supplied for items that have been removed',
  },
  condition: {
    type: 'string',
    required: true,
    description: 'The stock condition',
    example: 'New',
  },
  stock_no: {
    type: 'string',
    required: false,
    description: 'The stock number',
  },
  rego: {
    type: 'string',
    required: false,
    description: 'The registration plate',
  },
  rego_expiry: {
    type: 'string',
    required: false,
    description: 'ISO 8601 rego_expiry utc date and time string',
  },
  vin: {
    type: 'string',
    required: false,
    description: 'The Vehicle Identification Number',
  },
  year: {
    type: 'number',
    required: false,
    description: 'The vehicle year',
  },
  kms: {
    type: 'number',
    required: false,
    description: 'The vehicle odometer reading',
  },
  color: {
    type: 'string',
    required: false,
    description: 'The vehicle body colour',
  },
  description: {
    type: 'string',
    required: false,
    description: 'The vehicle description',
  },
  make: {
    type: 'string',
    required: false,
    description: 'The vehicle make',
  },
  model: {
    type: 'string',
    required: false,
    description: 'The vehicle model',
  },
  series: {
    type: 'string',
    required: false,
    description: 'The vehicle series',
  },
  badge: {
    type: 'string',
    required: false,
    description: 'The vehicle badge',
  },
  tranmission: {
    type: 'string',
    required: false,
    description: 'The vehicle tranmission',
  },
  location: {
    type: 'string',
    required: false,
    description: 'The vehicle location',
  },
  suburb: {
    type: 'string',
    required: false,
    description: 'The vehicle suburb',
  },
  postcode: {
    type: 'string',
    required: false,
    description: 'The vehicle postcode',
  },
  lat: {
    type: 'number',
    required: false,
    description: 'The vehicle latitude',
  },
  lng: {
    type: 'number',
    required: false,
    description: 'The vehicle longtitude',
  },
  price_egc: {
    type: 'number',
    required: false,
    description: 'The vehicle price excluding government charges',
  },
  price_dap: {
    type: 'number',
    required: false,
    description: 'The vehicle drive away price',
  },
  purchase_price: {
    type: 'number',
    required: false,
    description: 'The vehicle purchase price',
  },
  video_url: {
    type: 'string',
    required: false,
    description: 'The vehicle video url',
  },
  images: {
    type: 'array',
    items: {
      type: 'object',
      properties: {
        url: {
          type: 'string',
          required: true,
        },
      },
    },
  },
}

Posting stock items

To post a stock item, make a single POST request to the following AutoGrab API:

POST /v2/stock/{stock_feed_id}/{external_dealership_id}/{external_id}?region=au

Post payload should be the stock item payload, as detailed above. Note that you need to provide your stock_feed_id, as well as external_dealership_id (that is, your own dealership identifier external to AutoGrab) and the stock item external_id (that is, your own stock item identifier, external to AutoGrab).

When you post stock to AutoGrab, the system will overwrite any previous stock with the latest details contained in the post payload.

Sample response:

Note that the system allows a single stock feed to contain stock items across multiple dealerships

{
    "success": true,
    "stockItemResult": {
        "id": "3842b20f-423b-4eab-b87a-69bed4582725",
        "region": "au",
        "lead_id": "3f026858-5b0e-4221-8338-af40fb5d3865",
        "listing_id": null,
        "external_id": "000000001",
        "stock_feed_account_id": "1798a10c-977a-4ba8-b15b-0d9cb581b36b",
        "source": "ff7ff637-e4c1-40f2-9f9d-8f76d6c201fb",
        "listing_source": null,
        "listing_source_id": null,
        "external_vehicle_catalogue": null,
        "created_at": "2023-09-28T17:53:33.000Z",
        "updated_at": "2023-09-28T17:53:33.000Z",
        "checked_at": "2023-09-28T17:53:33.000Z",
        "stocked_at": "2023-09-28T17:53:33.000Z",
        "removed_at": null,
        "condition": "Used",
        "stock_no": "8567",
        "rego": "1REGOYG",
        "vin": "6FPAAAAAAAAAAAA5",
        "rego_expiry": "2023-09-28T00:00:00.000Z",
        "vehicle_id": "agv-ford-3399971153459088",
        "year": 2023,
        "compliance_year": null,
        "compliance_month": null,
        "build_year": null,
        "build_month": null,
        "make": "Ford",
        "model": "Transit",
        "badge": "350L",
        "series": "VO",
        "vehicle_title": null,
        "vehicle_rrp": null,
        "vehicle_age_years": null,
        "model_year": "MY23",
        "release_year": 2022,
        "release_month": 9,
        "body_type": "Van",
        "engine_type": "Piston",
        "transmission_type": "Automatic",
        "drive_type": "Front Wheel Drive",
        "fuel_type": "Diesel",
        "wheelbase_type": null,
        "body_config_type": null,
        "range": null,
        "power_kw": 125,
        "torque_nm": 390,
        "num_doors": 4,
        "num_seats": 3,
        "num_gears": 6,
        "num_cylinders": 4,
        "capacity_cc": 1995,
        "matcher_input": "year 2023 make FORD model TERRITORY series SZ badge  transmission 6 SP AUTOMATIC ",
        "matcher_inputs": {
            "make": "FORD",
            "year": 2023,
            "badge": "",
            "model": "TERRITORY",
            "series": "SZ",
            "transmission": "6 SP AUTOMATIC"
        },
        "kms": 150000,
        "color": null,
        "description": null,
        "purchase_price": null,
        "costs": null,
        "acquisition_channel": null,
        "purchaser": null,
        "est_retail": 35266,
        "est_trade": 29976,
        "price_egc": 36999,
        "price_dap": 55000,
        "price_includes_govt_charges": null,
        "price_egc_rel_to_est_trade": 1.234287429943955,
        "price_egc_diff_to_est_trade": 0.2342874299439552,
        "price_egc_rel_to_est_retail": 1.049140815516361,
        "price_egc_diff_to_est_retail": 0.04914081551636129,
        "video_url": null,
        "is_certified": null,
        "location_input": "",
        "state": null,
        "suburb": "Bluewood",
        "suburb_input": "Bluewood",
        "postcode": "3200",
        "postcode_input": "3200",
        "lat": 55.4324,
        "lng": -42.432,
        "formatted_location": null,
        "raw_payload": {
            "kms": 150000,
            "lat": 55.4324,
            "lng": -42.432,
            "vin": "6FPAAAAAAAAAAAA5",
            "make": "FORD",
            "rego": "1REGOYG",
            "year": 2023,
            "badge": "",
            "model": "TERRITORY",
            "images": [],
            "region": "au",
            "series": "SZ",
            "suburb": "Bluewood",
            "location": "",
            "postcode": "3200",
            "stock_no": "8567",
            "condition": "Used",
            "price_dap": 55000,
            "price_egc": 36999,
            "checked_at": "2023-09-28T17:53:33Z",
            "created_at": "2023-09-28T17:53:33Z",
            "stocked_at": "2023-09-28T17:53:33Z",
            "updated_at": "2023-09-28T17:53:33Z",
            "rego_expiry": "2023-09-28T17:53:33Z",
            "transmission": "6 SP AUTOMATIC"
        },
        "pipeline_state_id": 19
    }
}
get

Search for a vehicle with a query string

Authorizations
ApiKeystringRequired
Query parameters
searchstringRequired

The query by which to search the cars

countnumber · max: 100Optional

The number of vehicles to be returned

prefer_more_resultsbooleanOptional

If enabled, a larger selection of vehicles may be returned and a manual selection would be required to select the correct vehicle. This is disabled by default in favor of a system which will infer the correct vehicle and order the results by likelihood of behind correct.

regionstring · enumOptional

The region to perform this request in

Possible values:
reference_idstringOptional

An optional reference id which will be stored against usage records if supplied

Responses
200

Success

application/json
successbooleanOptionalDefault: true
idstringOptional
titlestringOptional
yearnumberOptional
makestringOptional
modelstringOptional
badgestringOptional
seriesstringOptional
model_yearstringOptional
release_monthnumberOptional
release_yearnumberOptional
body_typestringOptional

The generic body shape of the vehicle (e.g. Sedan, SUV, etc...)

body_configstringOptional

The body config/cab type of the vehicle (e.g. Dual Cab, Single Cab, etc...)

transmissionstringOptional

The specific transmission type used in the vehicle

transmission_typestringOptional

The generic transmission type (e.g. Automatic, Manual)

wheelbasestringOptional

The same value as wheelbase_type, provided for backwards compatability

wheelbase_typestringOptional

The generic wheelbase type of the vehicle (e.g. SWB, LWB)

fuelstringOptional

The same value as fuel_type, provided for backwards compatability

fuel_typestringOptional

The generic fuel type of the vehicle (e.g. Petrol, Diesel, Electric, etc...)

enginestringOptional

The same value as engine_type, provided for backwards compatability

engine_typestringOptional

The generic engine type of the vehicle (e.g. Piston, Rotary, etc...)

drivestringOptional

The specific drive type of the vehicle (e.g. 4x4 Dual Range, FWD, AWD, etc...)

drive_typestringOptional

The generic drive type of the vehicle (e.g. Four Wheel Drive, Front Wheel Drive)

num_doorsnumberOptional
num_seatsnumberOptional
num_gearsnumberOptional
num_cylindersnumberOptional
capacity_ccnumberOptional
power_kwnumberOptional
torque_nmnumberOptional
rangenumberOptional
totalnumberOptional
confidencestring · enumOptional

The confidence that the vehicle list represents the same vehicle that was described in the input. If this is "reduced", there may be discrepancies in vehicle properties such as fuel type, transmission type, or body type. We recommended displaying a warning on your frontend if a "reduced" quality match is returned.

Possible values:
400

Bad Request

application/json
errorbooleanOptionalDefault: true
messagestringOptional

Error message

401

Unauthorized

application/json
errorbooleanOptionalDefault: true
messagestringOptional

Error message

get/v2/vehicles/
GET /v2/vehicles/?search=text HTTP/1.1
Host: api.autograb.com.au
ApiKey: YOUR_API_KEY
Accept: */*
{
  "success": true,
  "vehicles": [
    {
      "id": "text",
      "title": "text",
      "year": 1,
      "make": "text",
      "model": "text",
      "badge": "text",
      "series": "text",
      "model_year": "text",
      "release_month": 1,
      "release_year": 1,
      "body_type": "text",
      "body_config": "text",
      "transmission": "text",
      "transmission_type": "text",
      "wheelbase": "text",
      "wheelbase_type": "text",
      "fuel": "text",
      "fuel_type": "text",
      "engine": "text",
      "engine_type": "text",
      "drive": "text",
      "drive_type": "text",
      "num_doors": 1,
      "num_seats": 1,
      "num_gears": 1,
      "num_cylinders": 1,
      "capacity_cc": 1,
      "power_kw": 1,
      "torque_nm": 1,
      "range": 1
    }
  ],
  "total": 1,
  "confidence": "standard"
}

Search for a vehicle with a query string

API Key

We support API key-based authentication, recommended if you build applications to integrate with our platform.

Do you need a key? Contact your sales rep or contact to request one to start developing.

Key Types

Secret API Key

A secret API key is for the server side and should not be shared with the front end.

Example Key: sec_23hcfb8374bfhc833i4uhx

Public API Key

A public API key is used on your website to call the API. These keys are limited to your domain and are safe to share publicly.

Example Key: pub_3ficuhb34u8fnxu34h9fm

Authenticating Requests

When making requests to the APIs, include the key in your request.

Other Authentication Methods

We also support OAuth, you can read more about this authentication mechanism here.

Authorization: ApiKey {your API key}

Integration Overview

Key things to know before you start.

Overview

Our API uses the OpenAPI 2.0 specification, making it easy for our partners to integrate. We want to ensure the best possible experience when integrating with our stack.

Environments

Environment
URL

Production V2

https://api.autograb.com.au/v2/

Regions

Certain API endpoints require that a region be passed as part of the request URL. Where necessary it is expected that region=au be included where region is required.

For example: https://api.autograb.com.au/v2/vehicle/239c8928fnc934fc?region=au

Country
Region Code

Your account manager will provision API keys for your account. If you require a key to be revoked please get in touch with your account manager.

APIs have soft quota limits that are enforced based on your contract agreement. To discuss these limits please get in touch with your account manager.

We strictly monitor the number of requests per second — if you exceed your allocation the API will respond with HTTP 429 Too Many Requests. We will also return additional headers to help you better understand when rate limits will be applied.

The limits are applied per API product and are decided based on your contract agreement. Rate limits do not relate to quotas.

Header
Example
Description

Residual Valuations

Predict the future value of a vehicle.

The Residual Value prediction API uses current market trends to influence the depreciation curve of newer vehicles. The API allows you to influence the outcome of the prediction by either mutating stored Recommended Retail Price or by providing your own Retail Value for the car.

In the example below we are sending the vehicle ID along with other key details to /v2/valuations/residual. The example body of the post is below.

This yields a prediction over the 5 year projection timeframe as below.

Market Statistics

Get key statistics on any vehicle ID

The Market Overlay Statistics API delivers statistics we generate on your behalf from the endpoint.

Starting with your Vehicle ID post it to the statistics endpoint.

An example response is below.

As this endpoint is part of the market overlay route you can enhance your payload with additional features. Refer to to see what's available.

Vehicle Data Basics

Get the level of detail you need on the vehicle you want.

The Vehicle Data API set allows you to find descriptive information on a vehicle at the level of granularity you require. This API requires and an appropriate license attached to it.

FAQ

These are frequently asked questions about AutoGrab and our products.

Embeddable Basics

AutoGrab hosts a range of embeddable products you can use to rapidly deploy solutions to the market to engage new customers and delight existing ones.

Sourcing Basics

Find the right market data to inform your decision making

The Sourcing API set allows you to find listing data for comparative and market insights. This API requires and an appropriate license attached to it.

OAuth Authentication

OAuth will only work for agreed AutoGrab api_v2 REST endpoints where an ApiKey has already been provisioned.

OAuth integration consists of 2 basic components:

  1. Token management (ensure your system always has a valid OAuth token available)

  2. REST api call signing using a valid token

Before implementing token management, make sure you have a valid client_id and client_secret as provided by AutoGrab. (They will be provided by your sales rep.) These are the credentials you will use to get valid tokens from the AutoGrab

Max Offer Configuration

Set and update your max offer config to refine your price predictions.

Get Configuration

Get your existing max offer configuration by using the request below.

/v2/valuations/max_offer_configuration

You will receive a payload as per below showing you your current configuration.

Update Configuration

Upsert a max offer configuration to change a part of it.

/v2/valuations/max_offer_configuration

Valuation Widget

The Valuation Widget offers an easy-to-configure and install instant cash offer journey for your website.

The widget can capture leads by auto-filling vehicle information, asking key questions and making a conditional offer informed by your preset valuation strategy.

It is highly customisable to your dealership brand or corporate imagery requirements, feeling at home on your existing website.

The resulting leads are deployed over email or select LMS providers depending on your region.

You can find an example of the valuation widget operating on the. For a more brand / corporate imagery-compliant implementation refer to

Speak to your sales rep about your desired implementation pattern. We will supply you with staging and production iFrame url code as part of your deployment process.

You have two options to embed the iframe inside your website. In both these options, it is critical that you set the iframe width to 650px and centred.

Popup

Vehicle ID Search

Get summary data on a vehicle by searching for its ID

If you know a vehicles ID already and would like summary data you can leverage a basic vehicle search.

What is a VIN?

The car's vehicle identification number (VIN) is the identifying code for a specific automobile. The VIN serves as the car's fingerprint, as no two vehicles in operation have the same VIN. A VIN is composed of 17 characters (digits and capital letters) that act as a unique identifier for the vehicle. A VIN displays the car's unique features, specifications and manufacturer. The VIN can be used to track recalls, registrations, warranty claims, thefts and insurance coverage.

What is an AutoGrab ID?

An AutoGrab ID or AGID is a unique identifier for a vehicle in our catalogue. All vehicles inside AutoGrab reference this as the source of metadata about the vehicle.

How do AutoGrab Valuations Work?

AutoGrab’s Valuation captures the asking prices from the past week for a specific vehicle’s year, make, model, and variant at a given mileage, sourced from private sellers and dealers within a selected state. It excludes government charges but includes GST, assuming the vehicles are in good condition and fitted with standard OEM accessories.

Leveraging advanced machine learning and updated weekly, our pricing integrates active listings and recently delisted data from public marketplaces. AutoGrab emphasises the most recent data to deliver comprehensive valuations that reflect current market trends.

Each estimate includes a confidence score, which indicates AutoGrab’s certainty in the valuation. Two key factors determine this score:

  • The number of vehicles listed in the past 365 days for the specific vehicle type

  • A detailed accuracy analysis of the pricing algorithm for that vehicle type

The confidence score ranges from 0 to 1, with 1 representing the highest confidence level

Where can I get customer support?

You can get assistance by

  • submitting a support ticket at www.autograbhelp.zendesk.com

  • calling or emailing your account representative

  • calling us with non-urgent matters on 1800 531 718

How do I know the current status of each endpoint?

Go to https://status.autograb.com.au/ to view the current system state.

Number of total requests that can be made until the limit is reset.

Rate-Limit-Reset

1609459200

The timestamp of when the limit will reset.

Monthly-Base-Request-Quota

100

Number of requests included in your contract.

Monthly-Max-Request-Quota

100000

Maximum number of requests allowed in your contract.

Monthly-Request-Total

100

Monthly requests performed for this request type.

Australia

au

Rate-Limit-Remaining

60

Number of remaining requests until the limit is reset.

Rate-Limit-Total

Supported Regions

API Keys

Quota Limits

Rate Limiting

60

- holding the iframe in a popup container and ensuring you conform to the
AUTOGRAB_VALUATION_HIDE
to event listening to close the popup container and
AUTOGRAB_VALUATION_DIMENSIONS
resize the height dynamically.

On Page - holding the iframe on a page ensuring you let us know so we can remove the close button. Since the page can still extend vertically you need to respond to the AUTOGRAB_VALUATION_DIMENSIONS alert.

The valuation widget will send messages you need to pay attention to via the iframe postMessage function. The messages are as follows.

AUTOGRAB_VALUATION_SUCCESS

The widget loaded successfully, no intervention is needed.

AUTOGRAB_VALUATION_ERROR

There was an exception or error delivering the iframe contents.

AUTOGRAB_VALUATION_HIDE

The close button at the end of the workflow or close X in the interface has been pressed.

AUTOGRAB_VALUATION_DIMENSIONS

The iframe has resized due to changed in the contents. Please respond by resizing the iframe container to hold the new contents without cropping.

AUTOGRAB_VALUATION_COMPLETE

The valuation widget has created a lead. Monitor this event with your analytics product to denote a successful lead conversion.

Overview

Example Implementations

Implementation

Position On Page

AutoGrab corporate homepage here
Berwick Jeep

Event Listeners

Please ensure your implementation meets the minimum event listener requirements.

{
    "region": "au",
    "vehicle_id": "5804870883868672",
    "initial_kms": 30000,
    "yearly_kms": 20000
}
{
    "success": true,
    "predictions": [
        {
            "year": 0,
            "kms": 30000,
            "valuation": 23103,
            "score": 0.818203282
        },
        {
            "year": 1,
            "kms": 50000,
            "valuation": 20601,
            "score": 0.81823397
        },
        {
            "year": 2,
            "kms": 70000,
            "valuation": 18323,
            "score": 0.818168287
        },
        {
            "year": 3,
            "kms": 90000,
            "valuation": 16250,
            "score": 0.818181818
        },
        {
            "year": 4,
            "kms": 110000,
            "valuation": 14365,
            "score": 0.818124288
        },
        {
            "year": 5,
            "kms": 130000,
            "valuation": 12655,
            "score": 0.818175287
        }
    ]
}
v2/sourcing/market_overlay/statistics/5655899674771456&minimum_days=60&region=au
{
    "success": true,
    "sample_size": 282,
    "days_checked": 60,
    "outlier_count": 9,
    "avg_days_to_sell": 14.310300431547615,
    "price_when_new": 56390
}

Overview

Market Overlay
the features on the market overlay
auth-broker
.

A valid token can be stored locally for use in subsequent api calls. It is recommended to calculate a safe expiry timestamp based on the expires_in property of the response body, and use this to pre-emptively refresh your token when it nears expiry.

With a valid AutoGrab OAuth token to hand, each REST api call that you make can be authorised by encoding the as-provided token string into your Authorization header using Bearer prefix.

  • I don’t get a 200 response on my request-token calls Double-check your client_id and client_secret with AutoGrab. Double-check your Basic Auth encoding. Double check your content-type header and post body structure.

Token management

auth-broker POST call to receive a valid OAuth token

REST api call signing

Troubleshooting

Your PUT request must conform to our schema as outlined below.
{
  "success": true,
  "max_offer_configuration": {
    "reconditioning_percentage": 0,
    "reconditioning_fixed": 0,
    "profit_margin_percentage": 0,
    "profit_margin_fixed": 0,
    "lot_percentage": 0,
    "lot_fixed": 0,
    "transport_percentage": 0,
    "transport_fixed": 0,
    "admin_percentage": 0,
    "admin_fixed": 0
  }
}
{
  "reconditioning": {
    "amount": 1000,
    "type": "fixed"
  },
  "profit_margin": {
    "amount": 1000,
    "type": "fixed"
  },
  "lot": {
    "amount": 1000,
    "type": "fixed"
  },
  "transport": {
    "amount": 1000,
    "type": "fixed"
  },
  "admin": {
    "amount": 1000,
    "type": "fixed"
  }
}
POST !!!!!!!!/request-token

Post body
{ grant_type: client_credentials }
Headers 
Content-Type: application/x-www-form-urlencoded
Authorization
Basic Auth of form client_id:client_secret Base64 encoded

Sample success response body
{
    "access_token": "[obfuscated-token-string]",
    "expires_in": 3599,
    "scope": "",
    "token_type": "bearer"
}
get

Get a vehicle by its ID

Authorizations
ApiKeystringRequired
Path parameters
vehicle_idstringRequired

ID of the vehicle returned from a search

Query parameters
regionstring · enumOptional

The region to perform this request in

Possible values:
reference_idstringOptional

An optional reference id which will be stored against usage records if supplied

Responses
200

Success

application/json
successbooleanOptionalDefault: true
idstringOptional
regionstring · enumOptionalPossible values:
titlestringOptional
yearnumberOptional
makestringOptional
modelstringOptional
badgestringOptional
seriesstringOptional
body_typestringOptional
body_configstringOptional
transmissionstringOptional
wheelbasestringOptional
fuelstringOptional
enginestringOptional
drivestringOptional
num_doorsnumberOptional
400

Bad Request

application/json
errorbooleanOptionalDefault: true
messagestringOptional

Error message

401

Unauthorized

application/json
errorbooleanOptionalDefault: true
messagestringOptional

Error message

get/v2/vehicles/{vehicle_id}
GET /v2/vehicles/{vehicle_id} HTTP/1.1
Host: api.autograb.com.au
ApiKey: YOUR_API_KEY
Accept: */*
{
  "success": true,
  "vehicle": {
    "id": "text",
    "region": "au",
    "title": "text",
    "year": 1,
    "make": "text",
    "model": "text",
    "badge": "text",
    "series": "text",
    "body_type": "text",
    "body_config": "text",
    "transmission": "text",
    "wheelbase": "text",
    "fuel": "text",
    "engine": "text",
    "drive": "text",
    "num_doors": 1
  }
}
{
    "vehicle": {
        "id": "5655899674771456",
        "region": "au",
        "title": "2017 Toyota Hilux SR5 Auto 4x4 Double Cab",
        "year": "2017",
        "make": "Toyota",
        "model": "Hilux",
        "badge": "SR5",
        "series": "GUN126R",
        "model_year": "MY17",
        "release_month": 7,
        "release_year": 2015,
        "body_type": "Utility",
        "body_config": "Dual Cab",
        "transmission": "Sports Automatic",
        "transmission_type": "Automatic",
        "wheelbase": null,
        "wheelbase_type": null,
        "fuel": "Diesel",
        "fuel_type": "Diesel",
        "engine": "Piston",
        "engine_type": "Piston",
        "drive": "4x4 Dual Range",
        "drive_type": "Four Wheel Drive",
        "num_doors": 4,
        "num_seats": 5,
        "num_gears": 6,
        "num_cylinders": 4,
        "capacity_cc": 2755,
        "power_kw": 130,
        "torque_nm": 450,
        "range": 1127,
        "options": [
        ]
    },
    "success": true
}

Example Response

authentication

Use this if you have a configuration to receive detailed specifications powered by Jato,

Use this if you require build sheet-level information on what the vehicle left the factory with.

Use this if you require a history-style description of the vehicle's pricing and listing history.

authentication

Use this to get a view of the market as it relates to a specific vehicle.

Use this to get key statistics on any vehicle ID.

Used to provide snapshot pricing information on a vehicle's position in the market.

Used to provide an instant cash offer journey to your websites.

Used to provide insights into the marketability of a given car in a regional marketplace.

Gauge API

Create your own price indication and benchmarking gauge.

The AutoGrab AutoGauge is an endpoint that delivers market benchmarking information with inputs of listing information. It supports a range of inputs depending on your use case.

Using /v2/valuations/gauge/ you can generate responses to make your own AutoGauges. The post body you use depends on the data you have and the commercial model you are open to.

Example Post Body

The body of the request can accept a range of inputs depending on your listing data. All available inputs are below.

{
  "region": "au",
  "odometer": 10000,
  "listing_price": 30000,
  "vehicle_id": "5257788510961664",
  "vin": "2T1BY32E95C347786",
  "rego": "BMT038",
  "state": "VIC",
  "vehicle_description": "2015 Toyota Corolla Ascent Automatic",
  "marketplace": "autotrader.com.au",
  "marketplace_id": "13495712"
}

The response for this request is below. The AutoGauge can be presented with a broad range of vehicle identifiers and will consider them dependent on your commercial agreement. In the scenario above, the AutoGrab ID was presented and used, and all other inputs were supplied as backups.

{
  "success": true,
  "gauge": {
    "id": "b2824bfd-d4a4-45e4-a81a-bed7b92c5cd9",
    "fill": 0.5,
    "listing_price": 24000,
    "market_range_min": 21000,
    "market_range_max": 26000,
    "confidence": 0.85,
    "sample_size": 10,
    "vehicle_title": "2015 Toyota Corolla Ascent Automatic"
  }
}

Use Case Driven Implementation Examples

Marketplace Implementation

If you are a marketplace you will store your own marketplace IDs against each listing. You can submit those via the request body to produce an AutoGauge response.

{
  "region": "au",
  "odometer": 10000,
  "listing_price": 30000,
  "marketplace": "example.com.au",
  "marketplace_id": "53445712"
}

Dealer Website Implementation (AutoGrab Customer)

As a customer with an existing AutoGrab API integration, you will likely have stored the AutoGrab IDs from vehicle search steps you've previously taken. In this case supply your known vehicle_id as part of the request. This is the lowest-cost implementation as it does not require a VIN or Registration search.

{
  "region": "au",
  "odometer": 10000,
  "listing_price": 30000,
  "vehicle_id": "5257788510961664",
  "vehicle_description": "2015 Toyota Corolla Ascent Automatic",
}

Dealer Website Implementation (Non-Direct Customer)

As an app or new customer, you may only have the VIN and registration information for your vehicles. You can pass them into the request body as below.

Registration Plate Search

Find vehicle information from a registration plate.

Overview

The Vehicle Registration API allows you to search for a vehicle by supplying its number plate. The request requires a region, the state (dependent on region), the number plate, and the API key. It will return either a matching vehicle or a null.

If a matching vehicle cannot be identified in all cases, we will return the upstream_vehicle field, allowing you to identify how the relevant road transport authority describes the car. Depending on your use case, you may wish to allow front-end users to manually classify the vehicle using the guide to fill out a Facet-style search.

Features

You can request more data than the standard payload by leveraging a range of features described below.

Ensure your commercial agreement has these features enabled if you require them.

Extended Data

This feature will return an extended payload of vehicle data from the registration authority. Use features=extended_data to receive this payload.

   "extended_data": {
        "body_type_description": "CAR/SEDAN",
        "color_description": "WHITE",
        "engine_number": "DKJ039523",
        "make_code": "VOLKS",
        "make_description": "",
        "model_code": "",
        "model_description": "POLO",
        "vehicle_type_description": "CAR / SMALL PASSENGER VEHICLE"

Upstream Data

This feature will return structured descriptive data from the registration authority. Use features=additional_upstream_data to receive this payload.

This feature will return the options fitted to the vehicle based on your . It will show all options, the price and if it is fitted to the vehicle or not. Usefeatures=build_data

API Test Cases

Test your requests in a safe zero-cost way through our test case set.

You can use our test cases to confirm your implementation on our production endpoints. All requests using these values are not billable.

Test Cases

Refer below to set of test cases. They are all linked and refer back to the same vehicle IDs.

Type
Value
Outcome

Test cases are supported across a range of API endpoints listed below. If the endpoint you are testing with is not listed get in touch to request test data.

  • /valuations/predict

  • /valuations/vins

  • /valuations/registrations

An example implementation could run a test as part of an integration test or development process. For example, you could test a valuation flow by first using a registration plate to get the ID (which is also test data) and send that to a /predict to get a valuation and a market overlay.

Car Analysis

Generate PDF reports of vehicles for users

AutoGrab can service PDF reports over API that can then be handled in your application.

Report Features

The report endpoint has the ability to determine the content of the report based on the information that is handed to it.

Vehicle Identification

The CarAnalysis report contains a stock photo and vehicle-specific information. This is generated using the VIN or Registration and State. Provide all three wherever possible to obtain the most accurate information possible for report generation.

Valuation

A valuation can be included in the report generation by adding the following data. What data is used for the valuation is determined on priority:

Price Record ID

If the pricing record ID is passed in the request, the associated valuation will populate the report. A valuation ID is generated using the Valuation endpoint and contained in the response. So, a valuation call needs to be performed before generating the report.

Lead ID

A lead ID is obtained from the Sourcing endpoint and is the tier 2 valuation source.

Odometer

If no Pricing or Lead ID is provided but an odometer is, the odometer will be used to perform a valuation with the same logic as the Valuation endpoint.

Sources

What sources are available with your account are controlled at a feature level. To access particular sources, don't hesitate to get in touch with your AutoGrab representative.

The sources enum determines additional features that are included within the report PDF.

A PPSR report provided by the government will be attached to the end of the PDF

Populates the Vehicle Information at the top of the report. It is recommended that vehicle details always be included as it contains the minimum identifiable information into the report.

It will display a table of all recorded odometer listings that AutoGrab has. Based on the odometer from previous listings, it can highlight the possibility of odometer rollback events.

It will populate a table with built-data information, which is the same data obtainable from the endpoint in PDF format.

Not currently implemented

AutoGrab can create custom-branded templates for the Car Analysis report. Please reach out to your AutoGrab representative for more information on building a custom template.

Due to the Car Analysis report reaching out to external endpoints and co-lating data the report is not generated immediately. It is recommended that the ID for the report be stored for future use or that the PDF be obtained again later.

To obtain the requested report, pass the ID from the POST to the get endpoint.

Pre-Accident Valuation

Deliver you own PAV style product by leveraging a range of AutoGrab API products.

To deliver a PAV-style experience you can leverage existing API endpoints to deliver your desired UX. Below is a broad guide on how to achieve a similar outcome. Each integration will have nuances and specific commercial differences - don't hesitate to speak to your Integrations support person or sales executive for guidance.

Workflow Overview

A basic overview of the PAV-Style integration workflow

Isolate The Vehicle ID

To begin the journey you will need to convert a real-world identifier into an AutoGrab ID to progress through the wider set of AutoGrab data. You can do this in four common ways;

  1. Registration Plate Search - the most common identifier consumers and agents are familiar with.

  2. - for unregistered or for scenarios where a plate is not known

  3. - for scenarios where a standard identifier is not known or where the data delivered from upstream (Road Authority) is not reliable.

For example, the response from a Registration search is below. Importantly you want to identify the ID, "id": "5932950835167232" for use in future steps.

We offer a range of data enrichment packs to deliver more information in your registration or VIN lookups, . Consider the usage of the compliance information or vehicle age products.

To understand the position of that vehicle in the market you would call on the y service. This would deliver you a large payload of information on the competitive set of the vehicle.

To enrich your Overlay information we suggest employing additional features. For this use case, those are

  1. - to get all the images attached to the lead inside AutoGrab.

  2. - to get the primary detailed description of each listing for UI display purposes.

To understand the value of the vehicle you will want to run a Valuation using the endpoint. That will give you the current retail and trade values for the vehicle. Consider employing the to understand the valuation upper and lower thresholds as part of this calculation.

If you need more information than is provided in the registration lookup you can access 200+ fields on every vehicle via the . This could help you describe or highlight differences between vehicles.

Valuation Basics

The Valuation API set allows you to predict current and future prices on vehicles. This API requires authentication and an appropriate license attached to it.

Vehicle Searching Basics

Vehicle discovery is the starting place for almost all functions on the AutoGrab API.

The Vehicle Search API set allows you to find matching vehicles within our database. This API requires authentication and an appropriate license attached to it.

Marketplace ID Lookup

A special use case endpoint for our marketplace customers to find their own leads on AutoGrab systems.

In a scenario where you want to understand the vehicle ID or data on listed vehicles, you can use the marketplace search system.

Prerequisites to access.

  1. To be approved to access this special use case endpoint, contact your account manager.

  2. Be aware of your listing ID and use that for the marketplace_id parameter.

/valuations/residual

  • /valuations/predict/conditions

  • /sourcing/market_overlay

  • /sourcing/market_overlay/statistics

  • Registration Plate

    REG4SUCCESS

    Returns a successful lookup response with a high-quality vehicle match for an ICE vehicle

    Registration Plate

    REG4SUCCESSEV

    Returns a successful lookup response with a high-quality match for an EV

    Registration Plate

    REG4WARNING

    Returns a successful lookup response with a low-match quality warning

    Registration Plate

    REG4NOMATCH

    Returns the VIN and vehicle description but no matching vehicle

    Registration Plate

    REG4VINONLY

    Only returns the VIN and no other vehicle details

    Vehicle ID

    1111111111111111

    Can be used for /Predict or /Sourcing to return outcomes.

    Supported Endpoints

    Implementation Guide

    Get a vehicle by its ID

    Registration or VIN-driven AutoGauge requests attract an additional lookup fee. Speak to your account representative for commercial implications.

    Be aware of your marketplace identifier, it is your public domain name, e.g drive.com.au

    For example, if you were Drive located in Australia with listing 969515655 you could form the request below.

    You will get this response with the vehicle ID "4969003601429068" allowing you to interact with other services like the Market Overlay, Pricing Prediction and more.

    You are only able to search for a vehicle once it is present on our service. If you receive the error below this means we are not yet aware of the listing due to its recency.

    In this scenario, we recommend falling back to a test lookup using the title in its most descriptive format. E.g 2024 Nissan X-TRAIL Ti Wagon Ti 2.5L SUV 4WD. Refer to the text searching guide here.

    Overview

    Example Usage

    Limitations

    {
      "region": "au",
      "odometer": 10000,
      "listing_price": 30000,
      "vin": "2T1BY32E95C347786",
      "rego": "BMT038",
      "state": "VIC",
      "vehicle_description": "2015 Toyota Corolla Ascent Automatic",
    }
    /v2/vehicles/marketplace/?marketplace=drive.com.au&marketplace_id=969515655&region=au
    {
      "success": true,
      "vehicle": {
        "id": "4969003601429068",
        "region": "au",
        "title": "2023 GWM Haval H6GT Ultra Auto 4WD",
        "year": "2023",
        "make": "GWM",
        "model": "Haval H6GT",
        "badge": "Ultra",
        "series": "B03",
        "model_year": null,
        "release_month": 8,
        "release_year": 2022,
        "body_type": "SUV",
        "body_config": null,
        "transmission": "Dual Clutch Automatic (DCT)",
        "transmission_type": "Automatic",
        "wheelbase": null,
        "wheelbase_type": null,
        "fuel": "Petrol",
        "fuel_type": "Petrol",
        "engine": "Piston",
        "engine_type": "Piston",
        "drive": "AWD",
        "drive_type": "Four Wheel Drive",
        "num_doors": 5,
        "num_seats": 5,
        "num_gears": 7,
        "num_cylinders": 4,
        "capacity_cc": 1998,
        "power_kw": 150,
        "torque_nm": 320,
        "range": 714,
        "options": [
          {
            "detail": "Metallic Paint",
            "price": 495
          },
          {
            "detail": "Standard Paint",
            "price": 0
          }
        ]
      }
    }
    {
      "error": true,
      "message": "Vehicle via marketplace drive.com.au/969515013 not found in database"
    }
        "additional_upstream_data": {
            "vin": "WVWZZZAWZKU065305",
            "year": "2019",
            "make": "Volkswagen",
            "model": "Polo",
            "badge": "AW",
            "series": "85TSI Comfortline",
            "fuel_type": "95 RON PULP",
            "body_style": "Hatch",
            "transmission": "7 auto",
            "capacity_cc": "1000",
            "colour": "White",
            "title": "2019 Volkswagen AW Polo 85TSI Comfortline 4 Hatch 7sp auto 1.0L 1000cc 3cyl T/Petrol 2018"
    "build_data": {
            "vin": "WAUZZZ8V7K1028938",
            "make": "AUDI",
            "model": "A3",
            "features": [
                {
                    "code": "0A1",
                    "value": "2 doors"
                },
                {
                    "code": "0AE",
                    "value": "Front stabilizer bar"
                },
                {
                    "code": "0B2",
                    "value": "Wheelbase"
                },
            ],
            "build_date": "2019-03-20"

    Build Data

    Refer to Factory Build Data reference material for more information on supported OEMs.

    Factory Build Data
    get

    Get a vehicle by its registration number

    Authorizations
    ApiKeystringRequired
    Path parameters
    plate_numberstringRequired

    Plate number of the registered vehicle

    Query parameters
    statestringOptional

    State is used in the AU region to narrow down a numberplate

    prefer_more_resultsbooleanOptional

    If enabled, a larger selection of vehicles may be returned and a manual selection would be required to select the correct vehicle. This is disabled by default in favor of a system which will infer the correct vehicle and order the results by likelihood of behind correct.

    featuresstringOptional

    Comma separated list of additional registration lookup data codes, if using (e.g. additional_upstream_data)

    regionstring · enumOptional

    The region to perform this request in

    Possible values:
    reference_idstringOptional

    An optional reference id which will be stored against usage records if supplied

    Responses
    200

    Success

    application/json
    successbooleanOptionalDefault: true
    idstringOptional
    regionstring · enumOptionalPossible values:
    titlestringOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    badgestringOptional
    seriesstringOptional
    body_typestringOptional
    body_configstringOptional
    transmissionstringOptional
    wheelbasestringOptional
    fuelstringOptional
    enginestringOptional
    drivestringOptional
    num_doorsnumberOptional
    upstream_vehiclestringOptional

    The raw vehicle description. It is recommended that end users manually verify that this value corresponds to the same vehicle type as the "vehicle" object above.

    confidencestring · enumOptional

    The confidence that the vehicle was matched correctly. If this is 'reduced', it's recommended to manually check or prompt your end user to check if the vehicle is correct.

    Possible values:
    colourstringOptional

    The colour of the vehicle, if known

    vinstringOptional

    The VIN of the vehicle, if known

    idstringOptional
    regionstring · enumOptionalPossible values:
    titlestringOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    badgestringOptional
    seriesstringOptional
    body_typestringOptional
    body_configstringOptional
    transmissionstringOptional
    wheelbasestringOptional
    fuelstringOptional
    enginestringOptional
    drivestringOptional
    num_doorsnumberOptional
    extended_dataanyOptional

    Extended Data vehicle description product which can be selected by providing the appropriate query parameter

    expiry_datestringOptional
    statusstringOptional
    compliance_platestringOptional
    year_of_manufacturenumberOptional
    writeoff_infoobject · WriteoffInfoProductOptional
    vinstringOptional
    build_datestringOptional
    makestringOptional
    modelstringOptional
    codestringOptional
    valuestringOptional
    read_datestringOptional

    ISO 8601 odometer read date

    odometernumberOptional
    predictionnumberOptional
    days_since_readnumberOptional
    avg_yearlynumberOptional
    avg_dailynumberOptional
    ag_market_avgnumberOptional
    star_ratingnumberOptional
    consumptionnumberOptional
    co2numberOptional
    star_ratingnumberOptional
    star_ratingnumberOptional
    test_regimestringOptional
    star_ratingnumberOptional
    test_regimestringOptional
    400

    Bad Request

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    401

    Unauthorized

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    404

    Not Found

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    get/v2/vehicles/registrations/{plate_number}
    GET /v2/vehicles/registrations/{plate_number} HTTP/1.1
    Host: api.autograb.com.au
    ApiKey: YOUR_API_KEY
    Accept: */*
    
    {
      "success": true,
      "vehicle": {
        "id": "text",
        "region": "au",
        "title": "text",
        "year": 1,
        "make": "text",
        "model": "text",
        "badge": "text",
        "series": "text",
        "body_type": "text",
        "body_config": "text",
        "transmission": "text",
        "wheelbase": "text",
        "fuel": "text",
        "engine": "text",
        "drive": "text",
        "num_doors": 1
      },
      "upstream_vehicle": "text",
      "confidence": "standard",
      "colour": "text",
      "vin": "text",
      "additional_vehicles": [
        {
          "id": "text",
          "region": "au",
          "title": "text",
          "year": 1,
          "make": "text",
          "model": "text",
          "badge": "text",
          "series": "text",
          "body_type": "text",
          "body_config": "text",
          "transmission": "text",
          "wheelbase": "text",
          "fuel": "text",
          "engine": "text",
          "drive": "text",
          "num_doors": 1
        }
      ],
      "extended_data": null,
      "registration_status": {
        "expiry_date": "text",
        "status": "text"
      },
      "vehicle_age": {
        "compliance_plate": "text",
        "year_of_manufacture": 1
      },
      "writeoff_info": {},
      "build_data": {
        "vin": "text",
        "build_date": "text",
        "make": "text",
        "model": "text",
        "features": [
          {
            "code": "text",
            "value": "text"
          }
        ]
      },
      "odo_history": [
        {
          "read_date": "text",
          "odometer": 1
        }
      ],
      "odo_prediction": {
        "prediction": 1,
        "days_since_read": 1,
        "avg_yearly": 1,
        "avg_daily": 1,
        "ag_market_avg": 1
      },
      "vsrr": {
        "fuel_economy": {
          "star_rating": 1,
          "consumption": 1
        },
        "emissions": {
          "co2": 1,
          "star_rating": 1
        },
        "pollutants": {
          "star_rating": 1,
          "test_regime": "text"
        },
        "safety": {
          "driver": {
            "star_rating": 1,
            "test_regime": "text"
          }
        }
      }
    }
    get

    Retrieve your CarAnalysis report

    Authorizations
    ApiKeystringRequired
    Path parameters
    idstringRequired

    ID of the CarAnalysis report

    Query parameters
    regionstring · enumOptional

    The region to perform this request in

    Possible values:
    Responses
    200

    Success

    application/json
    successbooleanOptionalDefault: true
    idstringOptional
    statusstring · enumOptionalPossible values:
    urlstringOptional

    The certificate url of the CarAnalysis record

    400

    Bad Request

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    401

    Unauthorized

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    get/v2/reports/car-analysis/{id}
    GET /v2/reports/car-analysis/{id} HTTP/1.1
    Host: api.autograb.com.au
    ApiKey: YOUR_API_KEY
    Accept: */*
    
    {
      "success": true,
      "certificates": {
        "id": "text",
        "status": "pending",
        "url": "text"
      }
    }

    PPSR

    Vehicle Details

    Odometer History

    Build Date

    Fitted Options

    Report White Labeling

    Obtaining Generated Reports

    It is highly recommended that you delay the Get by at least 20 seconds before attempting the request to allow sufficient time for the report to be generated.

    Example Report

    Factory Build Data
    Standard Car Analysis.pdf
    PDF · 269KB
    Open

    Generate a CarAnalysis report

    post

    Generate a CarAnalysis report

    Authorizations
    ApiKeystringRequired
    Query parameters
    regionstring · enumOptional

    The region to perform this request in

    Possible values:
    Body
    vinstringOptional
    regostringOptional
    statestringOptional
    pricing_record_idstringOptional

    The ID of a previous valuation

    lead_idstringOptional

    The ID of a lead

    odometernumberOptional

    The odometer reading of the vehicle, if known

    itemsstring · enumOptionalPossible values:
    Responses
    200

    Success

    application/json
    successbooleanOptionalDefault: true
    idstringOptional
    statusstring · enumOptionalPossible values:
    urlstringOptional

    The certificate url of the CarAnalysis record

    400

    Bad Request

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    401

    Unauthorized

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    post/v2/reports/car-analysis
    POST /v2/reports/car-analysis HTTP/1.1
    Host: api.autograb.com.au
    ApiKey: YOUR_API_KEY
    Content-Type: application/json
    Accept: */*
    Content-Length: 119
    
    {
      "vin": "text",
      "rego": "text",
      "state": "text",
      "pricing_record_id": "text",
      "lead_id": "text",
      "odometer": 1,
      "sources": [
        "ppsr"
      ]
    }
    {
      "success": true,
      "certificate": {
        "id": "text",
        "status": "pending",
        "url": "text"
      }
    }

    Current Valuation

    Use this to generate market accurate predictions for vehicles.

    Residual Valuation

    Use this to predict the future value of a vehicle.

    VIN & Rego Valuation

    Generate a valuation with a Registration Plate or VIN

    Max Offer Configuration

    Use this to set your in app or API level max offer config.

    AutoGauge

    Use this to generate inputs for your own AutoGauge

    Text Search

    Use this search mechanism if you have a vehicle description or title as a text string and want to resolve to a vehicle ID.

    Registration Plate Search

    Use this search mechanism if you have a registration plate and want summary data to resolve to a vehicle ID.

    Facet Search

    Use this search mechanism if you would like your users to interact with drop downs to resolve to a vehicle ID.

    Vehicle ID Search

    Use this to get summary data on a vehicle if you already have its ID.

    Marketplace ID

    A special use case search function for marketplace partners.

    Explore other vehicle discovery mechanisms here.

    Extrapolate Into Your Workflows

    Get Market Data

    Perform A Valuation

    Gain Specifications Information

    Specifications data is only available in Australia, more regions are coming soon.

    VIN Search
    Facet (Drop Down) Search
    Market Overla
    All Images
    Primary Description
    Pricing
    explore them all here
    Bounds feature
    Specification endpoint

    Detailed Specifications Data

    Factory Build Data

    Vehicle History

    Deal Gauge & Indicator

    Valuation Widget

    Market Insights Snapshot

    Market Overlay

    Market Statistics

    Certificates

    Generate certificates to meet you pricing or vehicle info needs.

    The certificate's endpoint is officially deprecated in favour of theendpoint for the purpose of generating Car Analysis Reports

    The documentation on this page is for historical reference only and should not be used for any integration development.

    AutoGrab can provide valuation and vehicle info certificates for you to offer through your own products in Australia. To request a certificate use the v2/certificates/generate endpoint and pass in the Valuation ID, that you have previously run as well as the type of certificate you'd like

    CarAnalysis

    Standard CarAnalysis

    For a standard CarAnalysis certificate, you can submit a request as below to receive the payload with summary info as well as the URL of the pdf. This certificate does include a PPSR report.

    {
      "valuation_id": "8c7c62c4-f41b-48f6-8b18-bb09851cd0fe",
      "type": "car-analysis"
    }

    An example response is below.

    {
        "success": true,
        "certificate": {
            "id": "ef1798ec-e34b-456a-b0d6-16f873071b7a",
            "vin": "WVWZZZAWZKU065305",
            "rego": "BMT038",
            "rego_state": "VIC",
            "url": "https://storage.googleapis.com/ag-ppsr/ef1798ec-e34b-456a-b0d6-16f873071b7a/report.pdf",
            "certificate_created_at": "2023-11-21T09:12:39.000Z",
            "year": "2019",
            "make": "VOLKS",
            "model": "POLO",
            "body_type": "CAR/SEDAN",
            "colour": "WHITE",
            "has_safety_recalls": false,
            "has_secured_parties": true,
            "has_stolen_records": false,
            "has_written_off_records": false
        }
    }

    If you wish to view an example CarAnalysis including PPSR you can find one below.

    Standard CarAnalysis.pdf
    PDF · 269KB
    Open

    CarAnalysis Without Valuation

    There may be user experiences where you do not wish to show a valuation on your certificates. You can use car-analysis as the type to request this. The response you will receive will be the same as above but the PDF will not have a valuation present.

    {
      "type": "car-analysis",
      "vin": "WVWZZZAWZKU065305"
    }

    If you wish to view an example CarAnalysis excluding a Valuation you can find one below.

    Example CarAnalysis Excluding Valuation.pdf
    PDF · 269KB
    Open

    Car Analysis Standalone

    This is a CarAnalysis report without a PPSR or Valuation. To request this certificate type use car-analysis-standalone.

    An example response is below

    If you wish to view an example CarAnalysis Standalone you can find one below.

    We offer white-label of certificates and can configure them to your brand guidelines. Contact us to learn more about the commercial arrangements. Technically you would just need to include a brand parameter in your request body.

    Market Overlay Widget

    The Market Overlay widget system provides insights into the marketability of a given car in a marketplace.

    Overview

    The widget can show regionalised market insights based on input vehicles. It is customisable to your brand via a hero brand icon. The resulting market information can help your customers understand the market reception to a given vehicle.

    Implementation

    Speak to your sales rep about your desired implementation pattern. We will supply you with staging and production iFrame url code as part of your deployment process.

    Implementation of the trigger to present this iframe is the responsibility of the site owner.

    There are two options for the implementation of the overlay:

    • Auto-Search

      • By providing a stringified vehicle description, AutoGrab will automatically match the vehicle based on the description and value based on the odometer provided when triggering the overlay widget. If the vehicle is incorrect, the user can override it.

    • Manual Selection

      • If no vehicle description and odo are provided, the overlay will prompt the user to select a vehicle manually from a set of dropdowns.

    To load the iframe where an attempt will be made to identify if, the vehicle description and odo will need to be provided:

    Label
    Description
    Example
    Requirement

    You have two options to embed the iframe inside your website. In both these options, it is critical that you set the iframe width to 650px and centered.

    Popup - holding the iframe in a popup container and ensuring you conform to the AUTOGRAB_INSIGHTS_HIDE to event listening to close the popup container and AUTOGRAB_INSIGHTS_DIMENSIONS resize the height dynamically.

    On Page - holding the iframe on a page ensuring you let us know so we can remove the close button. Since the page can still extend vertically you need to respond to the AUTOGRAB_INSIGHTS_DIMENSIONS alert.

    The valuation widget will send messages you need to pay attention to via the iframe postMessage function. The messages are as follows.

    AUTOGRAB_INSIGHTS_SUCCESS

    The widget loaded successfully, no intervention is needed.

    AUTOGRAB_INSIGHTS_ERROR

    There was an exception or error delivering the iframe contents.

    AUTOGRAB_INSIGHTS_HIDE

    The close button at the end of the workflow or close X in the interface has been pressed.

    AUTOGRAB_INSIGHTS_DIMENSIONS

    The iframe has resized due to changes in the contents. Please respond by resizing the iframe container to hold the new contents without cropping.

    Factory Build Data

    Request data the vehicle was fitted with at the factory

    To request an extensive factory build data list call the /build-data endpoint. If the relevant manufacturer is participating in our Options data product you will see it in the response.

    For example, you could request build information on VIN:WVWZZZAWZKU065305 as below.

    The VIN decodes to a Volkswagen Polo, as VW is participating in the Build data progream we are able to deliver the following build data.

    If we are unable to provide build information for the requested VIN we will return an error like this.

    If you are not using a valid VIN we will respond with this.

    The Factory build data program covers most major manufacturers back to vehicles built in 1999. Contact us to request if we have coverage of a specific area.

    As of 2023 the system has coverage across 40 manufacturers as below:

    Gauge Widget

    AutoGrabs dynamic pricing indicator for your website

    The AutoGrab AutoGauge is an iFrame widget that displays a valuation as well as some high-level market data for a vehicle listing. We host a configuration file that controls a range of labelling and styling variables that we will guide you through as part of your integration.

    Since the gauge operates in an iFrame, it is controlled using query parameters. These parameters are separated into two distinct groups: Base parameters and vehicle-type parameters. The base parameters are applicable for all use cases, whereas you only need to choose one set of vehicle-type parameters in order to use the gauge.

    api_key: string; Your Gauge API Key (locked to your provided domains).

    region: Region; The country code (‘au’, ‘nz’ or ‘my’)

    odometer: number;

    Get a vehicle by its registration number

    Retrieve your CarAnalysis report

    White Label

    Car Analysis
    CarAnalysis Standalone.pdf
    PDF · 92KB
    Open
    {
      "type": "car-analysis-standalone",
      "vin": "WVWZZZAWZKU065305"
    }
    {
        "success": true,
        "certificate": {
            "vin": "WVWZZZAWZKU065305",
            "url": "https://storage.googleapis.com/ag-pdf/1700518730355/report.pdf",
            "certificate_created_at": "2023-11-20T22:18:50.822Z"
        }
    }
    {
      "valuation_id": "098a0653-ae84-4a97-a2d8-505896ce3229",
      "type": "car-analysis-standalone",
      "brand": "caranalysis"
    }

    The most descriptive title of the vehicle you can provide so we can match it to our catalogue.

    2014 Tesla MODEL S Model S Electric Sedan

    Required

    API_Key

    Your API key used to securely load the iframe and load your brand configuration.

    123ABC

    Required

    Reference_ID

    Used to host many customers on a single API key for usage tracking

    Fjord_Motors

    Optional

    Odometer

    The odometer of the vehicle used in the valuation process

    1000

    Required

    <iframe
    src="https://offer.autograb.com.au/?api_key=1234567&vehicle_description=2014%20Mitsubishi%20Outlander%20GF7W%2020G%20Auto&odometer=365489&reference_id=Fjord_Motors" />.

    Example Auto Search Implementation Inputs

    Example Implementation iFrame

    Example UI

    Position On Page

    Event Listeners

    Please ensure your implementation meets the minimum event listener requirements.

    Vehicle Confirmation
    Manual Vehicle Selection
    The Market Output

    Vehicle_Description

    • Abarth

    • Alfa Romeo

    • Alpina

    • Audi

    • Bentley

    • BMW

    • Buick

    • Cadillac

    • Chevrolet

    • Chrysler

    • Citroën

    • Dacia

    • Daewoo

    • Dodge

    • DS

    • Fiat

    • Ford

    • GMC

    • Hummer

    • Hyundai

    • Isuzu

    • Jaguar

    • Jeep

    • KIA

    • Lancia

    • Land Rover

    • Lincoln

    • Maybach

    • Mercedes-Benz

    • MINI, Opel

    • Porsche

    • Peugeot

    • Renault

    • Rolls-Royce

    • Saab

    • SEAT

    • Skoda

    • smart

    • Vauxhall

    • Volkswagen

    • Volvo

    /v2/vehicles/vins/WVWZZZAWZKU065305/build-data?region=au
    {
        "success": true,
        "vehicle": {
            "vin": "WVWZZZAWZKU065305",
            "build_date": "2019-03-19",
            "make": "VOLKSWAGEN",
            "model": "POLO",
            "features": [
                {
                    "code": "00A",
                    "value": "Rear overhang, short"
                },
                {
                    "code": "0A2",
                    "value": "4 doors"
                },
                {
                    "code": "0AR",
                    "value": "Front stabilizer bar"
                },
                {
                    "code": "0B1",
                    "value": "Wheelbase"
                },
                {
                    "code": "0EG",
                    "value": "Dual-clutch transmission DSG DQ200"
                },
                {
                    "code": "0FV",
                    "value": "South Africa manufacturing sequence"
                },
                {
                    "code": "0K0",
                    "value": "Without alternative drive system"
                }
    
            ]
        }
    }
    ```
    {
        "error": true,
        "message": "Invalid or Unsupported VIN"
    }
    {
        "error": true,
        "message": "Invalid VIN, must be 17 characters."
    }

    Overview

    We are developing a version of this endpoint that groups each item under its relevant options pack. Stay tuned for this release.

    For basic fittable options, that is the options packs available on the vehicle refer to the or vehicle endpoints.

    Coverage

    The odometer reading for the vehicle you are valuing

    listing_price: number; The listing price for the vehicle you are valuing

    layout?: string; The desired layout style (‘horizontal’ or vertical). If a layout type is not provided, this will default to ‘vertical’.

    These parameters are used to determine the type of vehicle that you are valuing, and only one of these sets of properties are required to match a vehicle. Depending on your use case, it may be easier to use certain sets of parameters over others.

    vehicle_id The AutoGrab vehicle ID

    marketplace and marketplace_id The marketplace domain name where the vehicle is publicly listed (e.g. ‘carsales.com.au’) and the unique listing ID on the marketplace (e.g. ‘OAG-AD-216621’)

    vin The vehicle's VIN number

    rego and state The registration plate (e.g. ‘BMT038’) and the registration state code. Registration state is only required in Australia (‘VIC’, ‘NSW’, ‘QLD’, ‘ACT’, ‘TAS’, ‘SA’ or ‘WA’)

    vehicle_description The plain text vehicle description (e.g. ‘2019 Volkswagen Polo 85TSI Comfortline Auto MY19’)

    With VIN

    With Rego & State

    With Marketplace/Marketplace ID

    With Vehicle Description

    To test the gauge locally, simply create an index.html file with the following contents:

    You can then host this file on localhost:8080 using the npx-server package. You can use the ‘npx’ command line tool to do this:

    > npx html-server ./index.html

    The localhost:8080 URL is whitelisted for your API key, therefore enabling this workflow.

    If the Gauge is successfully rendered, we send a message via the iframe postMessage function. The way for a client to listen for the event is as follows:

    There is no minimum valuation threshold set per API key. We can configure this to your requirements.

    You can access this over API if you would like to make your own implementation over the iFrame, read more here.

    Query Parameters

    Base parameters

    An example gauge configuration
    <iframe
    src="http://localhost:3000?region=au&odometer=10000&listing_price=100
    00&vin=MM0DK2W7A0W207162&api_key={yourkey}"
    />
    <iframe
    src="http://localhost:3000?region=au&odometer=10000&listing_price=100
    00&rego=AOM964&state=VIC&api_key={yourkey}"
    />
    <iframe
    src="http://localhost:3000/?region=au&odometer=10000&listing_price=10
    000&marketplace=carsales.com.au&marketplace_id=OAG-AD-21662144&api_ke
    y={yourkey}"
    />
    <iframe
    src="http://localhost:3000/?region=au&odometer=10000&listing_price=10
    000&vehicle_description=2017%20Mazda%20CX-3%20Maxx&api_key={yourkey}"
    />
    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width,
    initial-scale=1.0" />
    <title>Iframe Test</title>
    </head>
    <body>
    <iframe
    src="https://gauge.autograb.com.au?region=au&odometer=10000&listing_p
    rice=26005&vin=MM0DK2W7A0W207162&api_key={yourkey}"
    width="100%"
    height="600px"
    ></iframe>
    </body>
    </html>
    window.addEventListener('message', event => {
    if (
    event.data === 'AUTOGRAB_GAUGE_SHOW' &&
    event.origin === 'https://gauge.autograb.com.au'
    ) {
    // show the gauge iframe element
    }
    });
    If there is a redirect to the 500 page, we send a message via the iframes postMessage
    function.. The 500 page is used for any error that occurs server side, as well as if the gauge
    valuation is below the threshold defined in your configuration (this is per API key).
    The way for a client to listen for the event is as follows:
    window.addEventListener('message', event => {
    if (
    event.data === 'AUTOGRAB_GAUGE_HIDE' &&
    event.origin === 'https://gauge.autograb.com.au'
    ) {
    // hide the gauge iframe element
    }
    });

    Vehicle Type Parameters

    Example Usage

    Local Testing

    Event Listeners

    Valuation Predict

    Generate market accurate predictions for vehicles.

    Overview

    The Valuation API can be used to determine new vehicles' present retail and trade values and their residual values.

    This API requires authentication and an appropriate license attached to it.

    A Vehicle ID returned from the Vehicle Search API or Vehicle Facet API is required to use the API.

    How is a valuation provided?

    AutoGrab’s Valuation captures the asking prices from the past week for a specific vehicle’s year, make, model, and variant at a given mileage, sourced from private sellers and dealers within a selected state. It excludes government charges but includes GST, assuming the vehicles are in good condition and fitted with standard OEM accessories.

    Leveraging advanced machine learning and updated weekly, our pricing integrates active listings and recently delisted data from public marketplaces. AutoGrab emphasises the most recent data to deliver comprehensive valuations that reflect current market trends.

    Each estimate includes a confidence score, which indicates AutoGrab’s certainty in the valuation. Two key factors determine this score:

    • The number of vehicles listed in the past 365 days for the specific vehicle type

    • A detailed accuracy analysis of the pricing algorithm for that vehicle type

    The confidence score ranges from 0 to 1, with 1 representing the highest confidence level

    Starting with a vehicle ID post it to /v2/valuations/predict

    The payload returned by price prediction requests will include an ID, which you can use to refer to the pricing request in the future. The /v2/valuations/history/{PRICING_ID} method will return the response from a previous pricing request, and you can also use the Pricing ID to track price changes with the Price Changes API.

    To get a paginated list of all your previous price predictions, you can use the /v2/valuations/history endpoint.

    You can manipulate the valuation returned by the prediction endpoint by supplying a condition score. The condition score can be between 1 and 5. A condition of 1 is poor, and 5 is excellent.

    Supplying any other numbers will return the default trade_price, which assumes excellent condition.

    If you're building a user interface that allows the user to choose a condition, it is recommended that you follow the industry standard in the table below.

    Condition
    Condition Score

    The positive equity feature identifies if the vehicle is in positive equity and the current equity position. To add an equity calculation to the Predict call, use features=equity

    If you require the upper and lower bounds used to calculate a prediction, you can use features=bounds.

    Detailed Specifications Data

    Use this if you have a configuration to receive detailed specifications powered by Jato.

    You can follow the steps outlined below to receive your detailed specifications payload.

    TLDR?

    Lookup the rego while including the catalogue=jato param.

    https://api.autograb.com.au/v2/vehicles/registrations/CCU542?region=au&state=VIC&catalogue=jato

    Lookup the detailed specifications using the ID you got from your lookup

    https://api.autograb.com.au/v2/vehicles/2022-831964720220610/detailed-specs?region=au

    Registration Search

    specifications
    {
        "region": "au",
        "catalogue": "autograb",
        "vehicle_id": "5804870883868672",
        "kms": 30000,
        "condition_score": 2
    }
    {
        "success": true,
        "prediction": {
            "id": "a2955915-9611-40ef-8b98-b827dad76ff4",
            "vehicle_id": "5804870883868672",
            "kms": 57306,
            "price": 20622,
            "score": 0.9239,
            "retail_price": 20622,
            "trade_price": 17122,
            "adjustment": null
        },
    }

    Poor

    1

    Fair

    2

    {
        "success": true,
        "prediction": {
            "id": "599aff94-7c79-4b9c-a976-ff39c3892190",
            "vehicle_id": "4825547834130432",
            "kms": 20000,
            "price": 32669,
            "score": 0.8515,
            "retail_price": 32669,
            "trade_price": 27769,
            "adjustment": null
        },
        "equity": {
            "positive_equity": true,
            "equity_position": 15769
        }
    }
    {
        "success": true,
        "prediction": {
            "id": "e2813b16-1012-41b5-9ea3-3b65675c50fd",
            "vehicle_id": "5804870883868672",
            "kms": 57306,
            "price": 20622,
            "score": 0.9239,
            "retail_price": 20622,
            "trade_price": 17122,
            "adjustment": null
        },
        "bounds": {
            "retail": {
                "lower": 19622,
                "upper": 21872
            },
            "trade": {
                "lower": 16122,
                "upper": 18372
            }
        }
    }

    Example

    Request

    To retrieve a Vehicle ID, use the .

    The is optional and can be used to further refine your pricing prediction.

    The Catalogue field is optional and will default to 'autograb' and the vehicle ID for performing a valuation. If you have access to Jato catalogue information, 'jato' can be passed as the catalogue and a JATO ID as the vehicle_id. The valuation will then be performed using the JATO information.

    Response

    Pricing ID

    Condition Score

    Features

    Positive Equity

    Valuation Bounds

    VIN Search

    Text Search

    In this scenario, we will use a text search to request the ID.

    You would form your CURL

    And receive the following response

    If you would like to receive additional lower confidence matches to power your UI you can enhance your request with our prefer_more_results parameter.

    Receiving a "total" greater then one is not an issue if you confidence also recieved is "standard". This means that there are potential variants with nuanced differences available. Select the first one as the list is ranked by confidence.

    Consider halting the process if your "confidence" is not "standard." This means the IDs returned are more likely to be incorrect. In this scenario, you have generally not given the text-matching system a detailed description enough to make a confident match. Consider using a registration lookup to enhance the detail available from the matcher.

    Now that you have isolated the Jato Code or AutoGrab ID you can request the Detailed specs.

    If you use the Detailed Specifications on a dealership website, you are required to display a "Powered by JATO" and accompanying logo, as below. You can download a high-definition version here.

    To request detailed specs use the Jato Code or AutoGrab ID you received from the earlier vehicle discovery step.

    You will receive your pre-defined detailed specification payload. An example response is below.

    The standard Website Specification pack includes the following categories and counts of included items.

    Using the Detailed Specifications API and Vehicle Search endpoints with the Jato parameter requires a commercial agreement between you and Jato. The agreed catalogue data is then served via AutoGrabs APIs on this endpoint. The content of the response will depend on your specific plan with Jato. For details on accessing this API, please contact AutoGrab.

    Search For The Vehicle

    Supported Methods

    Average

    3

    Good

    4

    Excellent

    5

    Vehicle Search APIs
    condition score
    post

    Value a vehicle using an AutoGrab ID

    Authorizations
    ApiKeystringRequired
    Body
    regionstring · enumOptionalPossible values:
    vehicle_idstringRequired

    The AutoGrab Vehicle ID which corresponds to the vehicle that should be valued

    kmsnumberOptional

    The odometer reading of the vehicle. If no reading is provided, the average value will be subsituted

    rrp_overwritenumberOptional
    rrp_adjustmentnumberOptional
    condition_scorenumberOptional
    regostringOptional

    The registration plate of the vehicle, for reference purposes only

    statestringOptional

    The registration state of the vehicle, if applicable

    vinstringOptional

    The VIN of the vehicle, for reference purposes only

    Responses
    200

    Success

    application/json
    successbooleanOptionalDefault: true
    idstringOptional

    The unique pricing record ID

    vehicle_idstringOptional

    The Vehicle ID of the vehicle that was priced

    created_atstringOptional

    The date when the preidction was made

    kmsnumberOptional

    The odometer reading that the valuation is based off. This is usually the same as the input provided, but if no odometer reading was specified, the average reading for the vehicle provided will be used instead.

    pricenumberOptional

    The predicted retail price

    scorenumberOptional

    The pricing confidence score. This indicates the estimated degree of accuracy for the price prediction.

    retail_pricenumberOptional

    The predicted retail price

    trade_pricenumberOptional

    The predicted trade price

    vehicle_idstringOptional
    typestring · enumOptional

    The granularity of the price adjustment. Vehicle price adjustments are applied to the whole vehicle and set using /valuations/adjustments, whereas pricing_record adjustments are set for a specific record using /valuations/history.

    Possible values:
    enabledbooleanOptional

    If the adjustment is enabled, it will be applied to new pricing requests for the vehicle id

    amountnumberOptional

    The value

    typestring · enumOptional

    Determines if the value is a percentage of a total value or a fixed amount

    Possible values:
    amountnumberOptional

    The value

    typestring · enumOptional

    Determines if the value is a percentage of a total value or a fixed amount

    Possible values:
    idstringOptional

    A unique ID that identifies the price override

    min_kmsnumberOptional

    The minimum odometer reading that this override will apply at

    max_kmsnumberOptional

    The maximum odometer reading that this override will apply at

    trade_pricenumberOptional

    The trade price override, if applicable

    retail_pricenumberOptional

    The retail price override, if applicable

    lowernumberOptional

    The predicted lower retail price bound

    uppernumberOptional

    The predicted upper retail price bound

    lowernumberOptional

    The predicted lower trade price bound

    uppernumberOptional

    The predicted upper trade price bound

    reconditioningnumberOptional
    profit_marginnumberOptional
    lotnumberOptional
    transportnumberOptional
    adminnumberOptional
    pricenumberOptional
    400

    Bad Request

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    401

    Unauthorized

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    post/v2/valuations/predict
    POST /v2/valuations/predict HTTP/1.1
    Host: api.autograb.com.au
    ApiKey: YOUR_API_KEY
    Content-Type: application/json
    Accept: */*
    Content-Length: 142
    
    {
      "region": "au",
      "vehicle_id": "text",
      "kms": 1,
      "rrp_overwrite": 1,
      "rrp_adjustment": 1,
      "condition_score": 1,
      "rego": "text",
      "state": "text",
      "vin": "text"
    }
    {
      "success": true,
      "prediction": {
        "id": "text",
        "vehicle_id": "text",
        "created_at": "text",
        "kms": 1,
        "price": 1,
        "score": 1,
        "retail_price": 1,
        "trade_price": 1,
        "adjustment": {
          "vehicle_id": "text",
          "type": "account",
          "enabled": true,
          "trade_adjustment": {
            "amount": 1,
            "type": "fixed"
          },
          "retail_adjustment": {
            "amount": 1,
            "type": "fixed"
          },
          "overrides": [
            {
              "id": "text",
              "min_kms": 1,
              "max_kms": 1,
              "trade_price": 1,
              "retail_price": 1
            }
          ]
        }
      },
      "bounds": {
        "retail": {
          "lower": 1,
          "upper": 1
        },
        "trade": {
          "lower": 1,
          "upper": 1
        }
      },
      "max_offer": {
        "reconditioning": 1,
        "profit_margin": 1,
        "lot": 1,
        "transport": 1,
        "admin": 1,
        "price": 1
      }
    }
    GET /v2/vehicles/registrations/CCU542?region=au&state=VIC&catalogue=jato
    GET /v2/vehicles/vin/LRW3F7FA1MC176142?region=au&catalogue=jato
    GET /v2/vehicles?region=au&search=2023 Hyundai Santa Fe MX5.V1 &catalogue=jato
    curl --location 'https://api.autograb.com.au/v2/vehicles?region=au&search=2023%20Hyundai%20Santa%20Fe%20MX5.V1%20&catalogue=jato' \
    --header 'apikey: ***APIKEY'
    {
        "success": true,
        "vehicles": [
            {
                "id": "2023-771102220220919",
                "legacy_id": "2023-771102220220919",
                "badge": null,
                "make": "Hyundai",
                "model": "Santa Fe",
                "series": "TM.V4",
                "title": "2023 Hyundai Santa Fe 3.5 MPi Auto TM.V4 MY2023",
                "year": "2023",
                "body_config_type": null,
                "body_type": "SUV",
                "drive_type": "Front Wheel Drive",
                "engine_type": "Piston",
                "fuel_type": "Petrol",
                "transmission_type": "Automatic",
                "wheelbase_type": null,
                "capacity_cc": 3470,
                "power_kw": 200,
                "torque_nm": 200,
                "range": null,
                "num_cylinders": 6,
                "num_doors": 5,
                "num_gears": 8,
                "num_seats": 7,
                "model_year": "MY23",
                "release_month": 9,
                "release_year": 2022,
                "rrp": 46050
            }
        ],
        "total": 1,
        "confidence": "standard"
    }
    curl --location 'https://api.autograb.com.au/v2/vehicles/registrations/CCU542?region=au&state=VIC&prefer_more_results=true&catalogue=jato' \
    --header 'apikey: ****APIKEY'
    GET /v2/vehicles/registrations/CCU542?region=au&state=VIC&catalogue=jato
    curl --location 'https://api.autograb.com.au/v2/vehicles/2022-831964720220610/detailed-specs?region=au' \
    --header 'apikey: ****APIKEY'
    {
        "success": true,
        "specs": [
            {
                "category": "Version",
                "description": "Make",
                "value": "Volkswagen",
                "location": null
            },
            {
                "category": "Version",
                "description": "Model",
                "value": "Polo",
                "location": null
            },
            {
                "category": "Version",
                "description": "Version",
                "value": "85TSI Comfortline DSG",
                "location": null
            },
            {
                "category": "Version",
                "description": "Body type",
                "value": "hatchback",
                "location": null
            },
            {
                "category": "Version",
                "description": "Seating capacity",
                "value": "5",
                "location": null
            },
            {
                "category": "Equipment",
                "description": "Air Conditioning type",
                "value": "manual",
                "location": null
            },
            {
                "category": "Equipment",
                "description": "Front and rear power windows",
                "value": "S",
                "location": "F"
            },
        ],
        "confidence": "standard"
    }

    Example Workflow

    Consider leveraging this feature in your user interface with a user input request. For example, “Is this the correct vehicle?” then allow the user to correct it with the additional results in this array.

    A registration lookup is a separate commercial agreement from the general detailed specification agreement. Speak to your account executive to understand your options.

    Request Detailed Specification

    Branding Requirements

    Example Workflow

    The response you receive will be defined by the configuration we store for you based on your specific business case. This applies to the inclusion of particular items as well as the inclusion of the "type".

    The standard Website Specification pack includes the following categories and counts of included items.

    Version: 12 items

    Equipment: 28 items

    Audio & Communication: 23 items

    Interior design: 30 items

    Exterior design: 20 items

    Primary safety: 24 items

    Secondary safety: 14 items

    Loadspace: 2 items

    Engine & Transmission: 31 items

    Hybrid System: 1 item

    Environmental Impact: 6 items

    Safety: 16 items

    Dimensions & Weights: 22 items

    Warranty & Servicing: 12 items

    Lighting: 2 items

    JATO_RGB_LOGO (3) (1).png
    image · 33KB
    Open
    The approved logo to be displayed on your dealership website

    Vehicle History

    Request a vehicles history on marketplaces

    The Vehicle History API allows you to access historical lead listing data from a variety of used car marketplaces. This API requires authentication and an appropriate license attached to it.

    The Endpoint operates on a tiered system of queries:

    VIN - The first initial call can be made to VIN + Region. However, if VIN does not return any history information, the following data is required as a fallback.

    • Year

    • Make

    Facet Search

    Use smart drop downs to find a vehicle.

    The Vehicle Facets API allows you to narrow down the matching vehicle based on the vehicle's parameters. The facets available are: year, make, model, badge, series, transmission, body, body_style, fuel, engine and

    Value a vehicle using an AutoGrab ID

    Model

  • Registration

  • Title
    Parameter
    Example

    Year

    year

    2019

    Make

    For example, if you were to use all available identifiers, your request would resemble the request below.

    If that vehicle is found, all its relevant events will be included in the response, an example is below.

    The Vehicle History endpoint delivers detailed information on events related to a listing. The following events are possible on a given listings.

    Listing - the detection of a listing being added to its relevant marketplace.

    Delisting - the detection of a listing being removed from its relevant marketplace, this is frequently and reliably related to a sale of the vehicle.

    Price Change - the detection of a movement in the price, see the features section below for more information.

    To perform an example request:

    An example payload is included below to illustrate a potential response.

    You can opt to enrich your vehicle history payload by passing in a feature or features separated by commas.

    Price Changes

    Currently, we support the price_changes feature that will show you fluctuations in the price. Passing this feature will return upward on downward movements in the listings' price.

    Include by adding feature=price_changes

    Contact your sales rep to understand your commercial rate card for each feature.

    Listing Sources

    The listing_sources feature will return a unique array of listing sources where the vehicle has been posted, URLs for each historical listing and the primary description of the vehicle from the lead listing.

    Listing Images

    The listing_images feature will return an array of URLs to the 5 primary listing images the AutoGrab platform has associated with the vehicle. If there is not images available an empty array will be returned

    Overview

    /v2/sourcing/history?region=au&registration_plate=BMT038&state=VIC&year=2019&make=Volkswagen&features=price_changes&model=Polo&vin=KL3TA48E9CB053071
    {
        "success": true,
        "vehicle_history": {
            "id": "24b0cdb5-fae3-4739-a47f-c4122b687acf",
            "events": [
                {
                    "type": "listing",
                    "odometer": 14646,
                    "price": 26890,
                    "marketplace": "carsales.com.au",
                    "seller_type": "dealer",
                    "timestamp": "2021-12-03T00:51:35.801Z"
                },
                {
                    "type": "listing",
                    "odometer": 27035,
                    "price": 24000,
                    "marketplace": "gumtree.com.au",
                    "seller_type": "private",
                    "timestamp": "2022-11-17T01:38:05.000Z"
                },
                {
                    "type": "delisting",
                    "odometer": 14646,
                    "price": 26890,
                    "marketplace": "carsales.com.au",
                    "seller_type": "dealer",
                    "timestamp": "2021-12-09T10:53:36.026Z"
                },
    curl '/v2/sourcing/history?region=au&vin=KL3TA48E9CB053071u' \
          -H 'ApiKey: {API_KEY}'
    {
      "success": true,
      "id": "dfe4d117-74e1-4545-9e79-a0baac8208a7",
      "events": [
        {
          "type": "listing",
          "odometer": 100000,
          "price": 100000,
          "marketplace": "Gumtree",
          "timestamp": "2022-09-20T10:22:07.072",
          "seller_type": "string"
        }
      ]
    }
    curl '/v2/sourcing/history?region=au&registration_plate=BMT038&state=VIC&year=2019&make=Volkswagen&features=price_changes&model=Polo&vin=KL3TA48E9CB053071'
          -H 'ApiKey: {API_KEY}'
                {
                    "type": "price_change",
                    "odometer": 27051,
                    "price": 25888,
                    "marketplace": "autotrader.com.au",
                    "seller_type": "dealer",
                    "timestamp": "2022-11-29T02:45:14.000Z"
                },
    /v2/sourcing/history?region=au&registration_plate=BMT038&state=VIC&year=2019&make=Volkswagen&features=listing_sources&model=Polo&vin=KL3TA48E9CB05123
        "listing_sources": [
            "carsales.com.au",
            "gumtree.com.au",
            "autotrader.com.au"
        ],
        "listing_urls": [
            {
                "source": "carsales.com.au",
                "url": "https://www.carsales.com.au/cars/details/2019-volkswagen-polo-85tsi-comfortline-aw-auto-my19/OAG-AD-20356677"
            },
            {
                "source": "gumtree.com.au",
                "url": "https://www.gumtree.com.au/s-ad/1304228374/"
            },
            {
                "source": "carsales.com.au",
                "url": "https://www.carsales.com.au/cars/details/2019-volkswagen-polo-85tsi-comfortline-aw-auto-my19/OAG-AD-21315043"
            },
            {
                "source": "autotrader.com.au",
                "url": "https://www.autotrader.com.au/car/12848266/volkswagen/polo/vic/fairfield/hatchback/"
            }
        ],
        "primary_description": "2019 Volkswagen Polo 85TSI Comfortline AW Auto MY20"
    }
    /v2/sourcing/history?region=au&features=all_images&vin=KNAPH81BSG5198595
        "all_images": [
            "https://dataingeststack-1-lambdastack-photosbucket00a3918c-cdea2gpcgyrk.s3.ap-southeast-2.amazonaws.com/1729471421803/98713041fa27428a9e8ba456d673123b",
            "https://dataingeststack-1-lambdastack-photosbucket00a3918c-cdea2gpcgyrk.s3.ap-southeast-2.amazonaws.com/1729471421803/60d46f85a530407bb3d33d388e498aa5",
            "https://dataingeststack-1-lambdastack-photosbucket00a3918c-cdea2gpcgyrk.s3.ap-southeast-2.amazonaws.com/1729471421803/e7d0275f11304e7eb5a341bc77c716b2",
            "https://dataingeststack-1-lambdastack-photosbucket00a3918c-cdea2gpcgyrk.s3.ap-southeast-2.amazonaws.com/1729471421803/ba0c6362db544ad6bf2e3f2de12917c8",
            "https://dataingeststack-1-lambdastack-photosbucket00a3918c-cdea2gpcgyrk.s3.ap-southeast-2.amazonaws.com/1729471421803/679a7a6533674b908bae9af174d5b3a5"
        ]

    It is recommended to provide all available data points when doing a Vehicle History call, only use VIN if no other data is available.

    The Make, Model fields are format-sensitive and rely on AutoGrabs Vehicle Search or ID lookup formatting. If using unsupported make and model descriptions, the vehicle history will not be returned when otherwise it could have been using the correct formatting.

    Example

    Vehicle History Events

    Example

    Features

    Note that the URLs may not always be active if the vehicle has already been delisted from the marketplace.

    It is expected that the external system download and store the images as part of the initial call. AutoGrab cannot guarantee the availability of these images for long term URL storage.

    wheelbase
    .

    If you would like to return aggregations of factes, use a comma-separated list in the facets field: eg. facets=badge,series,transmission.

    This function is useful when supplying data to drop-downs for display on a form. A good example of using Facets API is Westside Auto.

    For a preview of how facets in implemented inside the AutoGrab web app see the video below.

    Let's work backwards from the end result which is one or a few results for your user to pick from driven by previous drop-down. There are a few ways to make facets work for you, we'll go through the most common integration method.

    Ask your user to choose a make from the list then call all available models based on that selection. Let's say your user chose Toyota.

    Ask your user to choose a Model from the list then call all available models based on that selection. Let's say your user chose Corolla.

    Select A Badge A Load Vehicles From A Search

    Ask your user to choose a badge from the list. Let's say your user chose Sprint. You can see the count is 3, meaning there are only 2 badges. You could send that directly to them or repeat the process with the year (&facet=year) to refine it further.

    Let's say you'd like to present the three options to the user.

    If you do not pay attention to the counts under each facet, there may be too many vehicles to search for. You will know you have triggered this limitation if you see the error below.

    Search for Vehicles by facets

    /v2/vehicles/facets?region=au&facet=make
    {
        "success": true,
        "make": [
            {
                "value": "Abarth",
                "count": 47
            },
            {
                "value": "Acura",
                "count": 1
            },
            {
                "value": "Alfa Romeo",
                "count": 713
            },
            {
                "value": "AM General",
                "count": 2
            },
            {
                "value": "Aston Martin",
                "count": 169
    // trimmed - this would show all makes in the AU region
    /v2/vehicles/facets?region=au&make=Toyota&facet=model
    {
        "success": true,
        "model": [
            {
                "value": "4Runner",
                "count": 41
            },
            {
                "value": "86",
                "count": 72
            },
            {
                "value": "Allex",
                "count": 26
      // trimmed - this would show all models in the AU region
    v2/vehicles/facets?model=Corolla&region=au&make=Toyota&facet=badge
    {
        "success": true,
        "badge": [
            {
                "value": "SE Ltd",
                "count": 6
            },
            {
                "value": "SE LTD",
                "count": 2
            },
            {
                "value": "Sprint",
                "count": 3
            },
            {
                "value": "Sprinter",
                "count": 5
            },
            {
                "value": "Sprinter SR",
                "count": 1
            },
            {
                "value": "SR",
                "count": 4
            },
     // trimmed - this would show all badges in the AU region
    /v2/vehicles/facets/search?region=nz&badge=Sprint&make=Toyota&model=Corolla
    {
        "success": true,
        "vehicles": [
            {
                "id": "5364630897557504",
                "region": "nz",
                "title": "1997 Toyota Corolla Sprint Manual",
                "year": "1997",
                "make": "Toyota",
                "model": "Corolla",
                "badge": "Sprint",
                "series": null,
                "model_year": null,
                "release_month": 9,
                "release_year": 1995,
                "body_type": "Hatchback",
                "body_config": null,
                "transmission": "Manual",
                "transmission_type": "Manual",
                "wheelbase": null,
                "wheelbase_type": null,
                "fuel": "Petrol",
                "fuel_type": "Petrol",
                "engine": "Piston",
                "engine_type": "Piston",
                "drive": "FWD",
                "drive_type": "Front Wheel Drive",
                "num_doors": 5,
                "num_seats": 5,
                "num_gears": 5,
                "num_cylinders": 4,
                "capacity_cc": 1587,
                "power_kw": null,
                "torque_nm": null,
                "range": null,
                "options": []
            },
            {
                "id": "6033133967245312",
                "region": "nz",
                "title": "1999 Toyota Corolla Sprint Manual",
                "year": "1999",
                "make": "Toyota",
                "model": "Corolla",
                "badge": "Sprint",
                "series": null,
                "model_year": null,
                "release_month": 9,
                "release_year": 1995,
                "body_type": "Hatchback",
                "body_config": null,
                "transmission": "Manual",
                "transmission_type": "Manual",
                "wheelbase": null,
                "wheelbase_type": null,
                "fuel": "Petrol",
                "fuel_type": "Petrol",
                "engine": "Piston",
                "engine_type": "Piston",
                "drive": "FWD",
                "drive_type": "Front Wheel Drive",
                "num_doors": 5,
                "num_seats": 5,
                "num_gears": 5,
                "num_cylinders": 4,
                "capacity_cc": 1587,
                "power_kw": null,
                "torque_nm": null,
                "range": null,
                "options": []
            },
            {
                "id": "6563011892346880",
                "region": "nz",
                "title": "1998 Toyota Corolla Sprint Manual",
                "year": "1998",
                "make": "Toyota",
                "model": "Corolla",
                "badge": "Sprint",
                "series": null,
                "model_year": null,
                "release_month": 9,
                "release_year": 1995,
                "body_type": "Hatchback",
                "body_config": null,
                "transmission": "Manual",
                "transmission_type": "Manual",
                "wheelbase": null,
                "wheelbase_type": null,
                "fuel": "Petrol",
                "fuel_type": "Petrol",
                "engine": "Piston",
                "engine_type": "Piston",
                "drive": "FWD",
                "drive_type": "Front Wheel Drive",
                "num_doors": 5,
                "num_seats": 5,
                "num_gears": 5,
                "num_cylinders": 4,
                "capacity_cc": 1587,
                "power_kw": null,
                "torque_nm": null,
                "range": null,
                "options": []
            }
        ],
        "total": 3
    }
    {
        "error": true,
        "message": "Too many vehicles, you must return at least make, model, badge, series, year"
    }

    Facets User Interface Example

    Facet Integration Worked Example

    Form your GET request for Makes

    Form your request for a list of Models

    Form your request for a list of Badges

    Market Overlay

    Get a view of the market as it relates to a specific vehicle.

    The Sourcing API allows you to access lead and listing data from a variety of used car marketplaces.

    This API requires authentication and an appropriate license attached to it.

    Market Overlay API

    When viewing a lead on the web app, a view of similar leads that are currently listed for sale or recently sold is available on the side of the page (the 'Market Overlay'). The Market Overlay API gives you programmatic access to this data, enabling you to show price justifications or re-create our market comparison view for your own purposes.

    To access a Market Overlay, you will need to specify a Vehicle ID to search for relevant listings. To retrieve a Vehicle ID, use any of the Vehicle Search APIs.

    When retrieving market data for an Vehicle ID, a best-effort attempt is made to find at least four listings. This search begins by looking at the latest 60 days, and if there is not enough data in this time period, another 10 days of data is added until the minimum quota of four is reached.

    If you would like a larger sample of market data, you can specify a minimum_days value, and this will override the default minimum of 60 days.

    To perform an example request:

    An example payload is included below, although only the first lead is shown to save space:

    Name
    Description

    Passing option feature parameters can enhance the market overlay. You can request a single feature or combine them to enrich your responses. Your sales representative must enable a unique permission for each feature.

    This feature will deliver the contact details of the advertising dealership as per the listing. Use features=dealer_contact_details

    This feature will deliver the initial price the lead was advertised at. Use features=lead_starting_price

    This feature will deliver the count of times the price has been dropped. If you would like to know what each drop (or increase) was consider the endpoint. Use features=lead_price_drops

    This feature will deliver the RRP of the vehicle when it was new according to our vehicle data catalogue, the same data and more is available via our . Use features=vehicle_rrp

    This feature will deliver the listing URLs related to the lead across all sites it is listed on. Use features=listing_urls

    This feature will deliver the cover image for each record where available. Each image is stored for 90 days after delisting. Use features=cover_image

    This feature will deliver all primary images for each record where available. Each image is stored for 90 days after delisting. Use features=all_images

    This feature will deliver the primary listing description for each record where available. Use features=primary_description

    This feature will deliver the vehicle's registration plate in the market overlay payload. Use features=rego

    This feature will deliver the vehicle's VIN in the market overlay payload. Use features=VIN

    This feature will deliver the vehicle's stock number in the market overlay payload. Use features=stock_no

    This feature will deliver the average kms and average odometer of the overlay calculated for you in the response. Use features=avg_kms

    This feature will deliver the average price of the overlay calculated for you in the response. Use features=avg_price

    make

    Volkswagen

    Model

    model

    Polo

    Registration Plate

    registration_plate

    BMT038

    State

    state

    VIC

    Vin

    VIN

    KL3TA48E9CB053071

    exclude_outliers

    If enabled, leads that are considered outliers will be excluded from the results.

    Default value : false

    --true / false

    exclude_all_delisted

    If enabled, leads that are not currently on the market will be excluded from the results.

    Default value : false

    --true / false

    include_all_active

    If enabled, all listings that are currently on the market will be returned, instead of only listings which were uploaded within the specified timeframe (minimum_days). Additionally, if this is enabled, delisted leads will be returned based on the number of days since they were sold, rather than the number of days since they were listed.

    Default value : false

    --true / false

    include_trash

    If enabled, leads that are considered trash, written off, damaged, or missing details will be included in the results. The tag_ids array can then be used to determine if a lead is trash, damaged, etc.

    Default value : false

    --true / false

    features

    Comma-separated array of additional overlay feature codes as specified in your contract

    odometer_range_min

    The minimum range observed against similar vehicles

    Example : 50000

    odometer_range_max

    The maximum range observed against similar vehicles

    Example : 100000

    region

    --au

    curl 'https://api.autograb.com.au/v2/sourcing/market_overlay/{VEHICLE_ID}?region=au' \
          -H 'ApiKey: {API_KEY}'
    {
      "success": true,
      "sample_size": 56,
      "days_checked": 60,
      "leads": [
        {
          "id": "nz_autotraderconz_442876",
          "vehicle_id": "4926722097020928",
          "year": 2012,
          "release_year": 2011,
          "release_month": 8,
          "listed_at": "2022-08-11T10:22:07.072Z",
          "removed_at": "2022-09-20T10:22:07.072Z",
          "seller_type": "dealer",
          "color": "Red",
          "state": "VIC",
          "tag_ids": [
            "writeoff",
            "damaged"
          ],
          "price": 15000,
          "kms": 30000,
          "listing_sources": [
            "carsales.com.au",
            "autotrader.com.au"
          ]
        }
      ]
    }

    vehicle_id

    The ID of the vehicle you are requesting a market overlay on.

    minimum_days

    The minimum number of days to show listings for

    Default value : 60

    include_adjacent_years

    "contact_name": "Example Motors",
    "contact_number": "+61 3 2568 6587",
    "starting_price": 73990,
    "price_drop_count": 2,
    "price_when_new": 46990,
    "listing_details": [
                    {
                        "source": "gumtree.com.au",
                        "url": "https://www.gumtree.com.au/s-ad/1319103332/"
                    },
                    {
                        "source": "autotrader.com.au",
                        "url": "https://www.autotrader.com.au/car/13462144/toyota/hilux/sa/cheltenham/dual-cab/"
                    }
                ]
    "cover_image_url": "https://storage.googleapis.com/download/storage/v1/b/ag-img/o/1700380596629%2F402495842_660380.jpg?generation=1700380597213918&alt=media"
    "all_images": [
                    "https://storage.googleapis.com/download/storage/v1/b/ag-img/o/1713129285535%2Fd7ec39ad-671b-4b.jpg?generation=1713129287041771&alt=media",
                    "https://storage.googleapis.com/download/storage/v1/b/ag-img/o/1713129291498%2Fd3c1928d-a0f4-4f.jpg?generation=1713129292538543&alt=media",
                    "https://storage.googleapis.com/download/storage/v1/b/ag-img/o/1713129296398%2Ff982ef2b-a25f-47.jpg?generation=1713129297432084&alt=media",
                    "https://storage.googleapis.com/download/storage/v1/b/ag-img/o/1713129300707%2Fb4350079-4f04-4c.jpg?generation=1713129302187962&alt=media",
                    "https://storage.googleapis.com/download/storage/v1/b/ag-img/o/1713129306170%2F2a88d686-c4b7-4a.jpg?generation=1713129307655700&alt=media"
                ]
     "primary_description": "Near new condition 2022 Jeep Grand Cherokee Limited 4x4 <br> <br> <br> * Panormaic roof <br> * All Wheel Drive <br> * 20-inch Alloy Wheels <br> * 10.1-inch Touchscreen Display <br> * Wireless Apple CarPlay and Android Auto <br> * Leather Seats <br> * Heated & Ventillated front seats <br> * Heated steering wheel <br> * 9 Speaker Premium Audio System <br> * Power liftgate with adjustable height settings <br> * Automatic LED headlamps with Automatic highbeam <br> * Automatic Windscreen Wipers <br> * 10.25\" Multiview Display cluster <br> * 360 ParkView Rear Back-up Camera <br> * Front and Rear Park Assist with Stop <br> * Tyre Pressure Monitoring <br> * Keyless Entry with Push Button Start <br> * Blind Spot Monitoring with Rear Cross-Path Detection <br> * Adaptive Cruise Control with Stop and Go <br> * Active Lane Management <br> * Pedestrian Automatic Emergency Braking (with cyclist detection) <br> <br> We also accept trade ins, So bring down your pride and joy and we can price it on the spot! <br> <br> With easy onsite finance pre approvals available you can be in your new car in no time. <br> <br> WE ARE A PRIVATE OWNED DEALERSHIP JUST 20 MINUTES NORTH OF PERTH CITY,<br/><strong>Motor Mall WA</strong><br/>41 Buckingham Drive Wangara, WA 6065<br/>License number: 29875"
    "rego": "FDT46H",
    "vin": "MR0BA3CD900173054",
    "stock_no": 123ABC,
    "avg_odo": 123000,
    "avg_kms":2300,
    "avg_price": 67664,

    Example

    Request Parameters

    Features

    Dealer Contact Details

    Lead Starting Price

    Lead Price Drops

    Vehicle RRP

    All Listing URLs

    Primary Cover Image

    All Images

    Primary Listing Description

    Registration Plate

    VIN

    Stock Number

    Average Kms

    Average Price

    Vehicle History
    Specifications endpoint

    If enabled, vehicles that were manufactured up to one year before and one year after your chosen vehicle will also be included in the results.

    Default value : false

    --true / false

    get

    Allows caller to retrieve specific counts of available vehicles according to specific facet filters

    Authorizations
    ApiKeystringRequired
    Query parameters
    facetstringRequired
    yearstringOptional
    makestringOptional
    modelstringOptional
    badgestringOptional
    seriesstringOptional
    transmissionstringOptional
    body_typestringOptional
    fuelstringOptional
    drivestringOptional
    limitnumber · max: 100Optional

    The maximum number of results to return per facet query

    regionstring · enumOptional

    The region to perform this request in

    Possible values:
    reference_idstringOptional

    An optional reference id which will be stored against usage records if supplied

    Responses
    200

    Success

    application/json
    successbooleanOptionalDefault: true
    yearnumberOptional
    makestringOptional
    modelstringOptional
    countnumberOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    countnumberOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    countnumberOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    countnumberOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    countnumberOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    countnumberOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    countnumberOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    countnumberOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    countnumberOptional
    idstringOptional
    titlestringOptional
    scorenumberOptional

    Higher score is a match

    400

    Bad Request

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    401

    Unauthorized

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    get/v2/vehicles/facets/
    GET /v2/vehicles/facets/?facet=text HTTP/1.1
    Host: api.autograb.com.au
    ApiKey: YOUR_API_KEY
    Accept: */*
    
    {
      "success": true,
      "facets": {
        "year": [
          {
            "year": 1,
            "make": "text",
            "model": "text",
            "count": 1
          }
        ],
        "make": [
          {
            "year": 1,
            "make": "text",
            "model": "text",
            "count": 1
          }
        ],
        "model": [
          {
            "year": 1,
            "make": "text",
            "model": "text",
            "count": 1
          }
        ],
        "badge": [
          {
            "year": 1,
            "make": "text",
            "model": "text",
            "count": 1
          }
        ],
        "series": [
          {
            "year": 1,
            "make": "text",
            "model": "text",
            "count": 1
          }
        ],
        "transmission": [
          {
            "year": 1,
            "make": "text",
            "model": "text",
            "count": 1
          }
        ],
        "body_type": [
          {
            "year": 1,
            "make": "text",
            "model": "text",
            "count": 1
          }
        ],
        "fuel": [
          {
            "year": 1,
            "make": "text",
            "model": "text",
            "count": 1
          }
        ],
        "drive": [
          {
            "year": 1,
            "make": "text",
            "model": "text",
            "count": 1
          }
        ]
      },
      "vehicles": [
        {
          "id": "text",
          "title": "text",
          "score": 1
        }
      ]
    }
    get

    Search for vehicles by facets - minimum of year, make and model are required to return results and additional facets

    Authorizations
    ApiKeystringRequired
    Query parameters
    yearstringOptional

    The build year of the vehicle

    makestringOptional

    The make of the vehicle

    modelstringOptional

    The model of the vehicle

    badgestringOptional

    The badge of the vehicle

    seriesstringOptional

    The series of the vehicle

    transmissionstringOptional

    The specific transmission type (e.g. Sports Automatic, Automated Manual, etc...)

    transmission_typestringOptional

    The basic transmission type (i.e. Automatic, Manual or Reduction Gear)

    body_typestringOptional

    The body type of the vehicle (e.g. Hatchback, Sedan, etc...)

    fuelstringOptional

    The fuel type of the vehicle (e.g. Petrol, Diesel, etc...)

    drivestringOptional

    The specific drive type (e.g. AWD, 4WD, 4x4 Dual Range, etc...)

    drive_typestringOptional

    The basic drive type of the vehicle (e.g. Front Wheel Drive, Rear Wheel Drive, etc...)

    limitnumber · max: 100Optional

    The maximum number of results to return per facet query

    regionstring · enumOptional

    The region to perform this request in

    Possible values:
    reference_idstringOptional

    An optional reference id which will be stored against usage records if supplied

    Responses
    200

    Success

    application/json
    successbooleanOptionalDefault: true
    idstringOptional
    titlestringOptional
    yearnumberOptional
    makestringOptional
    modelstringOptional
    badgestringOptional
    seriesstringOptional
    model_yearstringOptional
    release_monthnumberOptional
    release_yearnumberOptional
    body_typestringOptional

    The generic body shape of the vehicle (e.g. Sedan, SUV, etc...)

    body_configstringOptional

    The body config/cab type of the vehicle (e.g. Dual Cab, Single Cab, etc...)

    transmissionstringOptional

    The specific transmission type used in the vehicle

    transmission_typestringOptional

    The generic transmission type (e.g. Automatic, Manual)

    wheelbasestringOptional

    The same value as wheelbase_type, provided for backwards compatability

    wheelbase_typestringOptional

    The generic wheelbase type of the vehicle (e.g. SWB, LWB)

    fuelstringOptional

    The same value as fuel_type, provided for backwards compatability

    fuel_typestringOptional

    The generic fuel type of the vehicle (e.g. Petrol, Diesel, Electric, etc...)

    enginestringOptional

    The same value as engine_type, provided for backwards compatability

    engine_typestringOptional

    The generic engine type of the vehicle (e.g. Piston, Rotary, etc...)

    drivestringOptional

    The specific drive type of the vehicle (e.g. 4x4 Dual Range, FWD, AWD, etc...)

    drive_typestringOptional

    The generic drive type of the vehicle (e.g. Four Wheel Drive, Front Wheel Drive)

    num_doorsnumberOptional
    num_seatsnumberOptional
    num_gearsnumberOptional
    num_cylindersnumberOptional
    capacity_ccnumberOptional
    power_kwnumberOptional
    torque_nmnumberOptional
    rangenumberOptional
    totalnumberOptional
    400

    Bad Request

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    401

    Unauthorized

    application/json
    errorbooleanOptionalDefault: true
    messagestringOptional

    Error message

    get/v2/vehicles/facets/search
    GET /v2/vehicles/facets/search HTTP/1.1
    Host: api.autograb.com.au
    ApiKey: YOUR_API_KEY
    Accept: */*
    
    {
      "success": true,
      "vehicles": [
        {
          "id": "text",
          "title": "text",
          "year": 1,
          "make": "text",
          "model": "text",
          "badge": "text",
          "series": "text",
          "model_year": "text",
          "release_month": 1,
          "release_year": 1,
          "body_type": "text",
          "body_config": "text",
          "transmission": "text",
          "transmission_type": "text",
          "wheelbase": "text",
          "wheelbase_type": "text",
          "fuel": "text",
          "fuel_type": "text",
          "engine": "text",
          "engine_type": "text",
          "drive": "text",
          "drive_type": "text",
          "num_doors": 1,
          "num_seats": 1,
          "num_gears": 1,
          "num_cylinders": 1,
          "capacity_cc": 1,
          "power_kw": 1,
          "torque_nm": 1,
          "range": 1
        }
      ],
      "total": 1
    }
    JATO_RGB_LOGO (3) (1).png

    Retrieve counts of available vehicles according to facet filters

    Search for a vehicle by facet, return matching vehicles

    See available features here.

    Recapture API

    The Recapture API allows you to upload, view and delete Customers.

    Uploading Customer lists

    The main purpose of the Recapture API is to facilitate the automated upload of new Customers.

    Customer lists are often very long, so the Recapture API allows you to queue Customer uploads without immediately processing every Customer in the list. There is an endpoint to queue the upload, and separate endpoints to check the status of the upload, and cancel it, if necessary.

    Upload a list of Customers

    A POST request to https://api.autograb.com.au/v2/recapture/upload?region={REGION} will initiate a new queued Customer list upload.

    The request body has the following parameters:

    • name: A name to assign to the upload, for personal reference

    • enable_rego_lookups: When rego lookups are enabled, if the registration plate (and state, if in Australia) is provided, but no VIN is provided for a Customer, we will perform a VIN lookup (at additional cost to you) and save the VIN along with the Customer. When a Customer includes a VIN number, we can cross-reference the VIN with new vehicle listings posted in the future, and use this to verify that the car being sold is definitely the same car that you are tracking.

    • monitor_start_date: An optional default date from which Customers in this upload should start being monitored. Applied to any Customer that does not specify its own monitor_start_date.

    • monitor_end_date: An optional default date after which Customers in this upload should stop being monitored. Applied to any Customer that does not specify its own monitor_end_date.

    • customers: An array of the Customers that you want to upload. Customers can have any of the following properties, but everything is optional (however, at least a rego OR a vin is necessary for tracking purposes):

      • rego: The registration plate of the Customer's vehicle

      • state: The registration state of the vehicle, if applicable

    If you try to upload an empty list, you will receive a You must upload at least one customer error.

    Example

    To perform an example request:

    This endpoint returns a 202 Accepted response. An example response payload is:

    Check upload status

    Once you've queued a Customer upload, you may want to check on the upload progress. Sending a GET request to /v2/recapture/upload/{UPLOAD_ID}?region={REGION} will return information about the upload, including the progress and the number of errors.

    The key properties to check the upload progress are total_uploaded_customers and total_processed_customers. Creating a new Customer consists of two steps - uploading and processing - and these two counters reflect the progress made for each of these steps.

    Once total_processed_customers is equal to total_uploaded_customers, the upload is complete. If there are any unexpected errors during the upload, total_errors will increase to signify this, but total_processed_customers is inclusive of errors.

    Example

    To perform an example request:

    An example response payload is:

    Cancel an upload

    If you queue a Customer upload and later change your mind, you can cancel the upload, stopping the creation of any more Customers.

    The response payload will include the details of the deleted upload.

    Example

    To perform an example request:

    An example response payload is:

    Once you have uploaded a Customer list, you are able to use the Recapture API to view your newly uploaded Customers, as well as create, edit and delete individual Customer.

    Get a list of all Customers

    You can use the /v2/recapture/customers?region={REGION} endpoint to retrieve a list of all your Customers.

    This list is paginated, and you can move between pages using the offset and limit query parameters. The limit is capped at 500.

    If you want to get Customers associated with a specific upload, you can pass the unique Upload ID to the upload_id query parameter.

    The response includes a total field with the overall count of Customers matching the query, which is useful for paginating through large lists.

    Example

    To perform an example request:

    An example response payload is:

    Create an individual Customer

    You can create a single Customer directly using the PUT method on the /v2/recapture/customers?region={REGION} endpoint.

    The request body has two parameters:

    • enable_rego_lookups: When enabled, if a registration plate is provided but no VIN, we will perform a VIN lookup (at additional cost). Defaults to false.

    • customer: An object with the Customer's details. At least a rego or a vin must be provided.

    If neither rego nor vin is provided, you will receive a Missing required properties error.

    Example

    To perform an example request:

    An example response payload is:

    Get an individual Customer

    You can get individual Customer details using the GET method on /v2/recapture/customers/{CUSTOMER_ID}?region={REGION}.

    Trying to lookup an invalid Customer ID returns the Invalid Customer ID error, and trying to look up a Customer that you don't have access to returns a You don't have permission to access that customer error.

    Example

    To perform an example request:

    An example response payload is:

    Update an individual Customer

    If you need to make changes to an individual Customer's details, you can use the PATCH method on the /v2/recapture/customers/{CUSTOMER_ID}?region={REGION} endpoint.

    Only the fields that you specify in the request body will be affected, and providing an empty value ("") or null will clear the field where applicable.

    The response payload will include the updated Customer object.

    You can update any of the following Customer properties: external_id, sale_date, monitor_start_date, monitor_end_date, additional_fields

    sale_date, monitor_start_date, and monitor_end_date must be valid date strings if provided.

    Example

    To perform an example request:

    An example response payload is:

    Delete an individual Customer

    You can delete an individual Customer by using the DELETE method on the /v2/recapture/customers/{CUSTOMER_ID}?region={REGION} endpoint.

    The response payload includes the details of the Customer that was deleted.

    The same error messages apply as with the Get Customer endpoint.

    Example

    To perform an example request:

    An example response payload is:

    vin: The Vehicle Identification Number corresponding to the Customer's vehicle

  • external_id: An optional identifier from your own system to associate with this Customer, for your reference.

  • sale_date: The date that the vehicle was sold to the Customer, if applicable. For reference only.

  • monitor_start_date: If provided, overrides the upload-level monitor_start_date for this specific Customer.

  • monitor_end_date: If provided, overrides the upload-level monitor_end_date for this specific Customer.

  • additional_fields: A map of any other properties that should be saved along with the Customer.

  • rego: The registration plate of the Customer's vehicle

  • state: The registration state of the vehicle, if applicable

  • vin: The Vehicle Identification Number corresponding to the Customer's vehicle

  • external_id: An optional identifier from your own system to associate with this Customer, for your reference

  • sale_date: The date that the vehicle was sold to the Customer, if applicable

  • monitor_start_date: If provided, the date from which this Customer should start being monitored

  • monitor_end_date: If provided, the date after which this Customer should stop being monitored

  • additional_fields: A map of any other properties to save with the Customer

  • Managing Customers

    curl -XPOST -H 'ApiKey: {API_KEY}' \
        -H "Content-Type: application/json" \
        -d '{
            "name": "June 2022 New Customers",
            "enable_rego_lookups": false,
            "monitor_start_date": "2022-06-01",
            "monitor_end_date": "2023-06-01",
            "customers": [
                {
                    "rego": "ZEN407",
                    "state": "VIC",
                    "external_id": "CUST-4821",
                    "sale_date": "2022-06-15",
                    "additional_fields": {
                        "market_source": "dealer_crm",
                        "customer_type": "vip"
                    }
                }
            ]
        }' 'https://api.autograb.com.au/v2/recapture/upload?region={REGION}'
    {
      "success": true,
      "upload": {
        "id": "99aa2d8e-348b-4321-beeb-f2fa67bab3eb",
        "created_at": "2022-07-21T08:07:16.580Z",
        "enable_rego_lookups": false,
        "name": "June 2022 New Customers",
        "total_uploaded_customers": 1,
        "total_processed_customers": 0,
        "total_errors": 0
      }
    }
    curl "https://api.autograb.com.au/v2/recapture/upload/{UPLOAD_ID}?region={REGION}" \
         -H 'ApiKey: {API_KEY}'
    {
      "success": true,
      "upload": {
        "id": "80230301-9d26-45d7-85d6-fbb8c519c014",
        "created_at": "2022-07-16T06:22:05.289Z",
        "enable_rego_lookups": false,
        "name": "August 2022 New Customers",
        "total_uploaded_customers": 1000,
        "total_processed_customers": 800,
        "total_errors": 0
      }
    }
    curl -XDELETE "https://api.autograb.com.au/v2/recapture/upload/{UPLOAD_ID}?region={REGION}" \
         -H 'ApiKey: {API_KEY}'
    {
      "success": true,
      "upload": {
        "id": "80230301-9d26-45d7-85d6-fbb8c519c014",
        "created_at": "2022-07-16T06:22:05.289Z",
        "enable_rego_lookups": false,
        "name": "August 2022 New Customers",
        "total_uploaded_customers": 1000,
        "total_processed_customers": 850,
        "total_errors": 0
      }
    }
    curl "https://api.autograb.com.au/v2/recapture/customers?region={REGION}&limit=100&offset=0" \
         -H 'ApiKey: {API_KEY}'
    {
      "success": true,
      "total": 2,
      "customers": [
        {
          "id": "000005cb-6d2f-49bc-a5a3-b596ede9202b",
          "last_updated": "2022-07-21T05:41:02.941Z",
          "rego": "ABC123",
          "state": "VIC",
          "vin": "1N4AL11D16N337720",
          "external_id": "CUST-4821",
          "sale_date": "2022-01-07T00:00:00.000Z",
          "monitor_start_date": "2022-06-01T00:00:00.000Z",
          "monitor_end_date": "2023-06-01T00:00:00.000Z",
          "vehicle_title": "2019 Toyota Camry Ascent",
          "sightings": [
            {
              "at": "2022-08-15T14:23:01.000Z",
              "lead_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
              "listing_url": "https://www.carsales.com.au/cars/details/OAG-AD-123456/",
              "listing_title": "2019 Toyota Camry Ascent Sport",
              "listing_price": 28500,
              "seller_type": "private"
            }
          ],
          "additional_fields": {
            "market_source": "dealer_crm",
            "customer_type": "vip"
          }
        },
        {
          "id": "0000993c-f21a-445e-9829-21786098df16",
          "last_updated": "2022-07-21T05:45:05.174Z",
          "rego": "DEF456",
          "state": "NSW",
          "vin": "4T1BE46K28U742135",
          "external_id": "CUST-7964",
          "sale_date": "2020-03-31T00:00:00.000Z",
          "monitor_start_date": null,
          "monitor_end_date": null,
          "vehicle_title": "2017 Mazda 3 Maxx",
          "sightings": [],
          "additional_fields": {
            "market_source": "dealer_crm",
            "customer_type": "vip"
          }
        }
      ]
    }
    curl -XPUT -H 'ApiKey: {API_KEY}' \
        -H "Content-Type: application/json" \
        -d '{
            "enable_rego_lookups": true,
            "customer": {
                "rego": "ZEN407",
                "state": "VIC",
                "external_id": "CUST-4821",
                "sale_date": "2022-06-01",
                "monitor_start_date": "2022-06-01",
                "monitor_end_date": "2023-06-01",
                "additional_fields": {
                    "market_source": "dealer_crm",
                    "customer_type": "vip"
                }
            }
        }' 'https://api.autograb.com.au/v2/recapture/customers?region={REGION}'
    {
      "success": true,
      "customer": {
        "id": "0000c339-1fb4-4d15-9b46-6509f2c5a2a4",
        "last_updated": "2022-07-21T02:27:03.543Z",
        "rego": "ZEN407",
        "state": "VIC",
        "vin": "1N4AL11D16N337720",
        "external_id": "CUST-4821",
        "sale_date": "2022-06-01T00:00:00.000Z",
        "monitor_start_date": "2022-06-01T00:00:00.000Z",
        "monitor_end_date": "2023-06-01T00:00:00.000Z",
        "vehicle_title": "2019 Toyota Camry Ascent",
        "sightings": [],
        "additional_fields": {
          "market_source": "dealer_crm",
          "customer_type": "vip"
        }
      }
    }
    curl "https://api.autograb.com.au/v2/recapture/customers/{CUSTOMER_ID}?region={REGION}" \
         -H 'ApiKey: {API_KEY}'
    {
      "success": true,
      "customer": {
        "id": "0000c339-1fb4-4d15-9b46-6509f2c5a2a4",
        "last_updated": "2022-07-21T02:27:03.543Z",
        "rego": "1EW2WA",
        "state": "VIC",
        "vin": "1N4AL11D16N337720",
        "external_id": "CUST-4821",
        "sale_date": "2020-07-18T00:00:00.000Z",
        "monitor_start_date": "2022-06-01T00:00:00.000Z",
        "monitor_end_date": "2023-06-01T00:00:00.000Z",
        "vehicle_title": "2019 Toyota Camry Ascent",
        "sightings": [
          {
            "at": "2022-08-15T14:23:01.000Z",
            "lead_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
            "listing_url": "https://www.carsales.com.au/cars/details/OAG-AD-123456/",
            "listing_title": "2019 Toyota Camry Ascent Sport",
            "listing_price": 28500,
            "seller_type": "private"
          }
        ],
        "additional_fields": {
          "market_source": "dealer_crm",
          "customer_type": "vip"
        }
      }
    }
    curl -XPATCH -H 'ApiKey: {API_KEY}' \
        -H "Content-Type: application/json" \
        -d '{
            "external_id": "CUST-5673",
            "sale_date": "2022-06-15",
            "monitor_start_date": "2022-06-01",
            "monitor_end_date": "2023-06-01",
            "additional_fields": {
                "market_source": "dealer_crm",
                "customer_type": "vip"
            }
        }' 'https://api.autograb.com.au/v2/recapture/customers/{CUSTOMER_ID}?region={REGION}'
    {
      "success": true,
      "customer": {
        "id": "0000c339-1fb4-4d15-9b46-6509f2c5a2a4",
        "last_updated": "2022-07-21T02:27:03.543Z",
        "rego": "1EW2WA",
        "state": "VIC",
        "vin": "1N4AL11D16N337720",
        "external_id": "CUST-5673",
        "sale_date": "2022-06-15T00:00:00.000Z",
        "monitor_start_date": "2022-06-01T00:00:00.000Z",
        "monitor_end_date": "2023-06-01T00:00:00.000Z",
        "vehicle_title": "2019 Toyota Camry Ascent",
        "sightings": [
          {
            "at": "2022-08-15T14:23:01.000Z",
            "lead_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
            "listing_url": "https://www.carsales.com.au/cars/details/OAG-AD-123456/",
            "listing_title": "2019 Toyota Camry Ascent Sport",
            "listing_price": 28500,
            "seller_type": "private"
          }
        ],
        "additional_fields": {
          "market_source": "dealer_crm",
          "customer_type": "vip"
        }
      }
    }
    curl -XDELETE "https://api.autograb.com.au/v2/recapture/customers/{CUSTOMER_ID}?region={REGION}" \
         -H 'ApiKey: {API_KEY}'
    {
      "success": true,
      "customer": {
        "id": "0000c339-1fb4-4d15-9b46-6509f2c5a2a4",
        "last_updated": "2022-07-21T02:27:03.543Z",
        "rego": "1EW2WA",
        "state": "VIC",
        "vin": "1N4AL11D16N337720",
        "external_id": "CUST-4821",
        "sale_date": "2020-07-18T00:00:00.000Z",
        "monitor_start_date": "2022-06-01T00:00:00.000Z",
        "monitor_end_date": "2023-06-01T00:00:00.000Z",
        "vehicle_title": "2019 Toyota Camry Ascent",
        "sightings": [
          {
            "at": "2022-08-15T14:23:01.000Z",
            "lead_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
            "listing_url": "https://www.carsales.com.au/cars/details/OAG-AD-123456/",
            "listing_title": "2019 Toyota Camry Ascent Sport",
            "listing_price": 28500,
            "seller_type": "private"
          }
        ],
        "additional_fields": {
          "market_source": "dealer_crm",
          "customer_type": "vip"
        }
      }
    }

    Webhooks

    Receive notifications from AutoGrab system on events to power your own experiences.

    The Webhooks API allows you to configure endpoints which will receive PUSH events from AutoGrab.

    This API requires authentication and appropriate license attached to it.

    Webhook Events

    There are several types of events that you can listen to using the Webhooks API. The names and descriptions of each of these events are included below.

    You can find example payloads for each of these events at the bottom of this page.

    Name
    Definition

    Currently, only the ping, recapture_new and price_change events are in use. You can still configure your webhooks to listen to the other events to enable these events once they are supported.

    If you need immediate access to Recapture price change and delist events for your use-case, please reach out to us at info@autograb.com.au

    To set up a webhook event subscriber, you'll first need to create the webhook using the AutoGrab API.

    You must provide a few options in the request body:

    • name: A name for the webhook. This is used for reference only.

    • region: The region that you want to subscribe to events in (au)

    • format

    To perform an example request:

    An example response payload is:

    You can explore this request further in the .

    A GET request to /v2/webhooks?region=au will return a list of all your configured webhooks in the given region.

    To perform an example request:

    An example response payload is:

    You can explore this request further in the .

    A GET request to /v2/webhooks/{WEBHOOK_ID}?region={REGION} will return the configuration of the webhook with the corresponding ID.

    The payloads are the same as the /v2/webhooks route but only a single webhook is returned instead of an array.

    If you try to access a webhook in a different region to the one specified in the request, you will receive an Invalid Region error. Additionally, accessing a webhook that your account does not have permission to view will return a You don't have permission to access that webhook error.

    If you attempt to view a webhook that doesn't exist, you will receive an Invalid Webhook ID error.

    Example

    To perform an example request:

    An example response payload is:

    You can explore this request further in the .

    A PATCH request to /v2/webhooks/{WEBHOOK_ID}?region={REGION} allows you to modify any of the properties of the corresponding Webhook.

    Only the fields specified in the request body will be modified, and passing a blank ("") value will remove the property from the webhook where applicable.

    The response includes the updated webhook, as well as a map of every property that changed.

    The same errors as the above (GET /v2/webhooks/${WEBHOOK_ID}) request apply, and a Request validation failed error may also be thrown if you provide any invalid Webhook Event names. Refer to the top of this page for a list of Webhook Events and their descriptions.

    Example

    To perform an example request:

    An example response payload is:

    You can explore this request further in the .

    A DELETE request to /v2/webhooks/{WEBHOOK_ID}?region={REGION} will permenantly delete the webhook.

    The response payload includes the configuration of the deleted webhook, as seen in the examples below.

    You may receive a small number of additional messages on your webhook's endpoint after deleting the webhook due to queued messages being sent through, but no new messages will be sent to your webhook after it has been deleted, and there is no way to recover the webhook without re-creating it.

    Example

    To perform an example request:

    An example response payload is:

    You can explore this request further in the .

    A POST request to /v2/webhooks/{WEBHOOK_ID}/ping?region={REGION} will send a ping event to your webhook with an example payload.

    You can't explicitly subscribe to ping events, as it is a special event type that is only sent when requested using this endpoint.

    Example

    To perform an example request:

    An example response payload is:

    You can explore this request further in the .

    Example payloads for the webhook events that are currently in use are included below.

    : The format that you want the PUSH events to be sent in (Currently, only
    json
    is supported)
  • endpoint: The HTTP endpoint that you want the webhook to push to. You can include URL parameters in this to facilitate token-based auth.

  • ping

    If you use the POST /v2/webhooks/{WEBHOOK_ID}/ping endpoint, your webhook will be called with the ping event to test the connection.

    recapture_new

    One of your Recapture customers was spotted on a used car listing website.

    recapture_price_change

    The listing price on one of your active Recapture customers changed.

    recapture_delist

    One of your Recapture customers removed their vehicle listing - either to cancel the sale or because it has been sold.

    curl -XPOST -H 'ApiKey: {API_KEY}' \
        -H "Content-type: application/json" \
        -d '{
            "region": "au",
            "name": "Sandbox Webhook",
            "format": "json",
            "endpoint": "https://sandbox.webhook.new"
        }' 'https://api.autograb.com.au/v2/webhooks'
    {
        "success": true,
        "webhook": {
            "id": "a9fb47f6-3d1d-4945-9f4d-f45b12a63797",
            "created_at": "2022-07-15T03:53:59.872Z",
            "name": "Sandbox Webhook",
            "format": "json",
            "events": ["recapture_new"],
            "endpoint": "https://example.com/push"
        }
    }
    curl "https://api.autograb.com.au/v2/webhooks?region=au" \
         -H 'ApiKey: {API_KEY}'
    {
      "success": true,
      "webhooks": [
        {
          "id": "9a275d4f-5476-4d86-b691-f0f37d985909",
          "created_at": "2022-07-15T03:54:07.431Z",
          "name": "Sandbox Webhook",
          "format": "json",
          "events": ["recapture_new", "recapture_delist"],
          "endpoint": "https://sandbox.example.com/push"
        },
        {
          "id": "a9fb47f6-3d1d-4945-9f4d-f45b12a63797",
          "created_at": "2022-07-15T03:53:59.872Z",
          "name": "Production Webhook",
          "format": "json",
          "events": ["recapture_new"],
          "endpoint": "https://example.com/push"
        }
      ]
    }
    curl "https://api.autograb.com.au/v2/webhooks/{WEBHOOK_ID}?region=au" \
         -H 'ApiKey: {API_KEY}'
    {
        "success": true,
        "webhook": {
            "id": "a9fb47f6-3d1d-4945-9f4d-f45b12a63797",
            "created_at": "2022-07-15T03:53:59.872Z",
            "name": "Sandbox Webhook",
            "format": "json",
            "events": ["recapture_price_change"],
            "endpoint": "https://example.com/push"
        }
    }
    curl -XPATCH -H 'ApiKey: {API_KEY}' \
        -H "Content-type: application/json" -d '{
            "name": "Updated Sandbox Webhook",
            "endpoint": "https://sandbox.example.com/push",
            "events": ["recapture_new"]
        }' 'https://api.autograb.com.au/v2/webhooks/{WEBHOOK_ID}?region=au'
    {
        "success": true,
        "webhook": {
            "id": "a9fb47f6-3d1d-4945-9f4d-f45b12a63797",
            "created_at": "2022-07-15T03:53:59.872Z",
            "name": "Updated Sandbox Webhook",
            "format": "json",
            "events": ["recapture_new"],
            "endpoint": "https://example.com/push"
        },
        "updates": {
            "name": "Updated Sandbox Webhook",
            "endpoint": "https://sandbox.example.com/push",
            "events": ["recapture_new"]
        }
    }
    curl -XDELETE "https://api.autograb.com.au/v2/webhooks/{WEBHOOK_ID}?region=au" \
         -H 'ApiKey: {API_KEY}'
    {
        "success": true,
        "webhook": {
            "id": "a9fb47f6-3d1d-4945-9f4d-f45b12a63797",
            "created_at": "2022-07-15T03:53:59.872Z",
            "name": "Sandbox Webhook",
            "format": "json",
            "events": ["recapture_price_change"],
            "endpoint": "https://example.com/push"
        }
    }
    curl -XPOST "https://api.autograb.com.au/v2/webhooks/{WEBHOOK_ID}/ping?region=au" \
         -H 'ApiKey: {API_KEY}'
    {
        "success": true,
        "ping": {
            "webhook_id": "a9fb47f6-3d1d-4945-9f4d-f45b12a63797",
            "at": "2022-07-15T03:53:59.872Z",
            "format": "json",
            "endpoint": "https://example.com/push",
            "response_time_ms": 83,
            "response_status": 200
        }
    }
    {
        // The Webhook Event type (required)
        "event": "ping",
        // The webhook event payload (required)
        "data": {
            "webhook_id": "a9fb47f6-3d1d-4945-9f4d-f45b12a63797",
            "at": "2022-09-03T00:37:57.095Z"
        }
    }
    {
        // The Webhook Event type (required)
        "event": "recapture_new",
        // The Webhook Event payload (required)
        "data": {
            // The Recapture record which has been seen online
            "customer": {
                // The internal ID of the Recapture client (required)
                "id": "05df2f33-1d03-404c-b0c2-dfbecaa65fff", // Required
                // The ISO timestamp when the event took place (required)
                "last_updated": "2022-09-03T00:37:57.095Z",
                // The registration plate that you were tracking (nullable)
                "rego": "BMT038",
                // The registration state that you uploaded alongside the customer record, if applicable (nullable)
                "state": "VIC",
                // The VIN uploaded for the Recapture customer (nullable)
                "vin": null,
                // The name uploaded for the Recapture Customer (nullable)
                "client_name": "Raph",
                // The mobiule number uploaded for the Recapture Customer (nullable)
                "mobile_number": "+61 123 456 789",
                // The ISO formatted sale date uploaded alongside the customer record, if applicable (nullable)
                "sale_date": "2022-03-02T00:00:00.000Z",
                // The ISO formatted expiry date for the Recapture customer record, if applicable (nullable)
                "expiry_date": "2022-11-20T00:00:00.000Z",
                // The vehicle title, determined by a registration or listing lookup (nullable)
                "vehicle_title": "2019 Volkswagen Polo 85TSI Comfortline",
                // Any additional data that was uploaded alongside the customer record (required)
                "additional_fields": {
                    "notes": "Three free services included in package"
                },
                // An array including details for each time one of the customer's vehicles was spotted online (required)
                "sightings": [
                    {
                        // The date when the vehicle was spotted online (required)
                        "at": "2022-09-03T00:37:57.095Z", 
                        // The AutoGrab Lead ID that includes the listing where the vehicle was spotted online (required)
                        "lead_id": "au_volkswagen_bmt038",
                        // The URL where the vehicle was listed online (required)
                        "listing_url": "https://www.carsales.com.au/cars/details/2019-volkswagen-polo-85tsi-comfortline-aw-auto-my19/OAG-AD-20356677",
                        // The title of the listing (required)
                        "listing_title": "2019 Volkswagen Polo 85TSI Comfortline AW Auto MY19",
                        // The price that the vehicle was listed for at the time of capture (nullable)
                        "listing_price": 26890,
                    }
                ]
            }
        }
    }
    {
        // The Webhook Event type (required)
        "event": "valuation_change",
        // The webhook event payload (required)
        "data": {
            // The pricing record which has changed in value
            "pricing_record": {
                // The unique Pricing Record ID (required)
                "id": "a9fb47f6-3d1d-4945-9f4d-f45b12a63797",
                // The AutoGrab Vehicle ID associated with the pricing record (required)
                "vehicle_id": "5478860653068288",
                // The ISO timestamp when the pricing record was first created (required)
                "created_at": "2022-08-20T07:20:32.412Z",
                // The registration plate associated with the pricing record (nullable)
                "rego": "ZXX678",
                // The registration state associated with the pricing record, if applicable (nullable)
                "state": "VIC",
                // The VIN associated with the pricing record (nullable)
                "vin": null,
                // The odometer input for the pricing record (required)
                "kms": 32000,
                // The current price prediction for the given vehicle at the kilometers entered (required)
                "price": 36782,
                // The current predicted retail price (required)
                "retail_price": 36782,
                // The current predicted trade price (required)
                "trade_price": 32100,
                // The adjustments and overrides that are currently applied to the pricing record (nullable)
                // Matches the adjustment schema from the `/v2/valuations/predict` endpoint
                "adjustment": null,
                // An array of all the recorded valuation changes that this pricing record has had (required)
                "changes": [
                    {
                        // The unique change ID (required)
                        "id": "ba4b3912-ae25-44c1-8a66-36ca68fac859",
                        // The change type (valuation or configuration) (required)
                        // A valuation change implies that the market has shifted, 
                        // whereas a configuration change is simply a result of your 
                        // adjustments/overrides configuration changing
                        "type": "valuation",
                        // The ISO timestamp when the change occurred (required)
                        "at": "2022-09-03T01:03:55.382Z",
                        // The new price (required)
                        "new_price": 36782,
                        // The new retail price (required)
                        "new_retail_price": 36782,
                        // The new trade price (required)
                        "new_trade_price": 32100,
                        // The old price (required)
                        "old_price": 38520,
                        // The old retail price (required)
                        "old_retail_price": 38520,
                        // The old trade price (required)
                        "old_trade_price": 34200
                    },
                    {
                        // Any previous changes to the pricing record will also be
                        // included here, following the same schema as above
                        "id": "46610b56-f3c7-4744-8adf-021c0aba1cc4",
                        "type": "configuration",
                        "at": "2022-09-01T03:12:32.524Z",
                        "new_price": 38520,
                        "new_retail_price": 38520,
                        "new_trade_price": 34200,
                        "old_price": 38520,
                        "old_retail_price": 37520,
                        "old_trade_price": 33900 
                    }
                ]
            },
            // This is a copy of the specific valuation change that caused the webhook to trigger (required)
            // in case many changes occur in a short timespan, this is the source of truth for the
            // exact change that triggered the event.
            "change": {
                "id": "ba4b3912-ae25-44c1-8a66-36ca68fac859",
                "type": "valuation",
                "at": "2022-09-03T01:03:55.382Z",
                "new_price": 36782,
                "new_retail_price": 36782,
                "new_trade_price": 32100,
                "old_price": 38520,
                "old_retail_price": 38520,
                "old_trade_price": 34200
            }
        }
    }

    Create a new Webhook

    Example

    Get a list of your webhooks

    Example

    Get the configuration of a single webhook

    Modify the configuration of a single webhook

    Delete a webhook

    Ping a webhook

    Webhook Payloads

    ping

    recapture_new

    valuation_change

    API Playground
    API Playground
    API Playground
    API Playground
    API Playground
    API Playground

    valuation_change

    One of your previous price predictions has changed by (at least) the threshold defined in your valuation changes config (/valuations/changes)