Access to Roadster APIs is limited to current dealer, manufacturer, or data partners. We support a limited set of endpoints that allow our partners to access certain features of the Roadster platform for use externally or to pass us data required to better integrate our systems into the dealer's software ecosystem.
This initial API documentation has been produced to help introduce our partners to our data and experience endpoints. For additional questions, please contact our support teams at digitalretailsupport@cdk.com
All requests should be made using HTTPS, production API endpoint https://api.roadster.com/v1
Authentication method depends on the endpoint being used. In general, you should have been provided an API key that you will use in the HTTP header of each of your calls. For applications that will be passing us customer records as part of the user interface, you will instead encrypt the data to AES-256-CBC standards using a cipher key provided by Roadster.
The HTTP authorization header should look like this:
Authorization: Bearer <token>
You must replace
<token>
with the API key that Roadster provided to you.
In the case when we are calling back your endpoint, we will use the same mechanism and include your API key in our
HTTP request Authorization
header so that you can authorize our webhooks/callbacks ensuring that key is present on all
callback requests.
Passing data to Roadster via the browser is possible using encrypted query parameters. Encryption to AES-256-CBC standards is required using an encryption key provided to you by Roadster. All parameters should be encrypted before passing them via the URL query string.
You can get a list of active dealers for your account. The response will only include dealers which are provisioned for your API credentials. Access to dealers is provisioned by Roadster support.
[- {
- "name": "Hyundai Demo",
- "dpid": "hyundaidemo",
- "address": "123 Main St",
- "city": "San Francisco",
- "state": "CA",
- "zip_code": "94103",
- "phone": "415-555-2121",
- "status": "live",
- "partner_id": "12345"
}
]
Get configuration details of a specific dealer provisioned for your account. This includes fee setups, markups and rate details.
{- "name": "Hyundai Demo",
- "dpid": "hyundaidemo",
- "address": "5300 Wible Rd",
- "city": "Bakersfield",
- "state": "CA",
- "zip_code": 93313,
- "phone": "310-949-1234",
- "status": "Demo",
- "partner_id": "CA317",
- "configuration": {
- "price_unlock_mode": "lock",
- "fees": {
- "doc_fee": 85,
- "filing_fee": 30,
- "handling_fee": 0,
- "lease_acquisition_fee": 200
}, - "markups": [
- {
- "make": "All",
- "finance": {
- "new": {
- "global": {
- "standard": 1,
- "special": null
}
}, - "used": { }
}
}
]
}
}
You can generate a redirect link to land a customer on a vehicle details page for a specific dealership on the Roadster platform.
Request Payload
required | object or object (Dealer) Parameters to identify the dealership against which the call is being made. |
object (VehicleRequest) Customer's vehicle preference which will also be the resulting landing page of the returned URL. | |
object (Analytics) Values to be appended to the URL query in the response for analytics purposes |
{- "dealer": {
- "dpid": "umazda"
}, - "vehicle": {
- "vin": "4T1C11AK0LU322811",
- "make": "Toyota",
- "model": "Camry",
- "trim": "LE",
- "year": 2020
}, - "analytics": {
- "utm_source": "roadster-api",
- "utm_medium": "email",
- "utm_campaign": "2021 retargeting"
}
}
{- "status": "ok",
- "vehicle": {
- "price_locked": true,
- "in_stock": true,
- "grade": "new"
}, - "link": {
- "dpid": "umazda",
}
}
You can create a new customer in the Roadster Express Strorefront for a specified dealer using a POST to the /customers endpoint. The response will include the unique identifier of the customer as well as a unique URL to the specified piece of inventory on the dealer's site which will automatically store the provided customer as active in the session.
A request to the create customer endpoint will create a customer and respond with a redirect url that can be used to redirect the customer to a landing page on the corresponding dealer site with account active in the session and pricing unlocked. In the case that the customer exists, the response will still be success but the duplicate parameter will also be true.
Request Payload
required | object (User) The customer data |
object or object (Dealer) Parameters to identify the dealership against which the call is being made. | |
object (VehicleRequest) Customer's vehicle preference which will also be the resulting landing page of the returned URL. | |
object (Payment) The preferred payment information. | |
Array of objects (Plans) Service and protection plans that are to be included as returned from the GET service and protection plans endpoint. | |
Array of objects (Accessories) List of accessories selected by the customer. | |
object (Analytics) Values to be appended to the URL query in the response for analytics purposes | |
checkout | boolean If true, the url in the response will direct the consumer to the checkout flow rather than the VDP for the dealer's Express Store |
{- "customer": {
- "first_name": "Steve",
- "last_name": "McQueen",
- "email": "steve.mcqueen@example.com",
- "phone": "+14155556666",
- "partner_id": "string"
}, - "dealer": {
- "dpid": "umazda"
}, - "vehicle": {
- "vin": "4T1C11AK0LU322811",
- "make": "Toyota",
- "model": "Camry",
- "trim": "LE",
- "year": 2020
}, - "payment": {
- "deal_type": "lease",
- "lease_down": 1500,
- "lease_months": 36,
- "lease_miles": 10000,
- "finance_down": 3000,
- "finance_months": 48
}, - "plans": [
- {
- "id": 6160,
- "code": "RBX301",
- "tier": "5R"
}
], - "accessories": [
- {
- "code": "MAX900"
}
], - "analytics": {
- "utm_source": "roadster-api",
- "utm_medium": "email",
- "utm_campaign": "2021 retargeting"
}, - "checkout": false
}
{- "status": "ok",
- "customer": {
- "id": 12345,
- "dpid": "umazda",
}
}
Use this endpoint to assign an agent or update the agent assigned to a customer.
id required | integer The Roadster customer lead ID |
Request Payload
object (Agent) The assigned sales agent | |
object or object (Dealer) Parameters to identify the dealership against which the call is being made. |
{- "agent": {
- "id": "ID9876",
- "email": "natalie.wood@example.com"
}, - "dealer": {
- "dpid": "umazda"
}
}
{- "status": "ok",
- "customer": {
- "first_name": "string",
- "last_name": "string",
- "email": "string",
- "phone": "string"
}
}
This browser-based URL request format allows partners to securely pass customer data into the Roadster platform using URL query parameters. The customer data is then used to create an account on the dealer's Express Storefront and bypass any price locks that may be enabled for that dealership. The request also results in lead submission consistent with the lead routing rules the dealership has setup for "Unlock Inquiry" lead types.
Sample URL, replace
express.<dpid>.com
with the hostname for the dealership you are referring to.
https://express.<dpid>.com/{vin}?mem=[encrypted_parameters]
The mem
query parameter should contain the encrypted URL query string of the customer's contact information that you are referring to the dealership. This contact information can include any of the following key / value pairs:
Parameter | Required | Description |
---|---|---|
fname | no | The first name of the customer. |
lname | no | The last name of the customer. |
yes | The email address of the customer (used as the unique identifier for each dealership). | |
phone | no | The phone number of the customer |
custid | no | A unique identifier from the attribution source (only used for reporting purposes). |
These parameters should be placed in a standard URL query string and URL encoded before encryption. E.g.
fname%3DTesting%26lname%3DBot%26email%3Dtesting%40roadster.com%26phone%3D800-505-1000
vin required | string The vehicle identification number of the requested details landing page. |
mem required | string The customer's encrypted contact information (see detail below). |
require 'openssl' require 'base64' def aes256_cbc_encrypt(key, data) key = Digest::SHA256.digest(key) if(key.kind_of?(String) && 32 != key.bytesize) aes = OpenSSL::Cipher.new('AES-256-CBC') aes.encrypt aes.key = key iv = aes.random_iv return aes.update(data) + aes.final, iv end def generate_link(vin, key = "your_encryption_key") data = {fname: 'Testing', lname: 'Bot', email: 'testing@example.com', phone: '800-505-1000'} block, iv = aes256_cbc_encrypt key, data.to_query mem_token = Base64.encode64(iv + block) escaped_token = CGI.escape mem_token url = "/express/" + vin + "?mem=" + escaped_token end
{- "status": "ok",
- "link": {
- "dpid": "umazda",
}
}
Creates or updates an existing trade in offer using the customer's email address, dealership and vehicle VIN as the unique identifier. If the customer already has a trade offer, this endpoint will update that offer. If the offer doesn't exist, it will create a new one.
Request Payload
dpid required | string non-empty The unique identifier of that dealership on the Roadster platform. |
email required | string (Email) non-empty The customer's email |
vin required | string non-empty The vehicle identification number. |
value required | integer non-empty The value of the trade. |
year | integer The year of the trade. |
make | string The make of the trade. |
model | string The model of the trade. |
trim | string The trim of the trade. |
mileage | integer The mileage of the trade. |
{- "dpid": "umazda",
- "email": "steve.mcqueen@example.com",
- "vin": "4T1C11AK0LU322811",
- "value": 0,
- "year": 2020,
- "make": "Toyota",
- "model": "Camry LE",
- "trim": "4 Cylinders 2.5L DI DOHC 152 CID",
- "mileage": 95000
}
{- "status": "ok",
- "customer": {
- "id": 1650260,
}
}
You can detailed pricing information for a VIN at a specified dealership. This includes cash, finance and lease options as available including existing dealer markups, fees, etc.
Request Payload
required | object (UserPayments) customer data used to calculate the payment |
required | object or object (Dealer) Parameters to identify the dealership against which the call is being made. |
required | object (Vehicle) The vehicle the customer is interested in. |
object (Payment_v2) The parameters of the payment being requested. | |
object (TradePayments) The trade in | |
Array of objects (Plans) Service and protection plans that are to be included as returned from the GET service and protection plans endpoint. |
{- "customer": {
- "credit_score": 750,
- "incentives": [
- "loyalty"
], - "zip_code": 94113
}, - "dealer": {
- "dpid": "umazda"
}, - "vehicle": {
- "vin": "4T1C11AK0LU322811",
- "make": "Toyota",
- "model": "Camry",
- "year": 2020,
- "trim_code": "C4308",
- "exterior_color_code": "LA10",
- "interior_color_code": 218,
- "option_codes": [
- "PF5"
]
}, - "payment": {
- "deal_type": "lease",
- "customer_cash": 2000,
- "term": 36,
- "annual_mileage": 12000,
- "no_taxes_or_fees": false
}, - "trade_in": {
- "value": 5000,
- "ownership": "financed",
- "payoff": 5000,
- "mileage": 98000,
- "is_offer": true
}, - "plans": [
- {
- "id": 6160,
- "code": "RBX301",
- "tier": "5R"
}
]
}
{- "deals": {
- "cash": {
- "id": 4550,
- "deal_type": "cash",
- "terms": {
- "msrp": 24550,
- "price": 24050,
- "base_price_before_taxes_and_fees": 24050,
- "base_price_after_fees": 21050,
- "total_add_ons": 0,
- "total_accessories": 0,
- "total_plans": 0,
- "total_taxable_add_ons": 0,
- "total_nontaxable_add_ons": 0,
- "normalized_taxable_add_on_price": 1081,
- "normalized_nontaxable_add_on_price": 1000,
- "tax_rate": 0.05,
- "secondary_tax_rate": 0.01,
- "local_tax_rate": 0.01,
- "combined_tax_rate": 0.08,
- "sales_tax": 0,
- "primary_tax": 0,
- "secondary_tax": 0,
- "local_tax": 0,
- "tax_surcharge": 0,
- "tax_adjustment": 0,
- "default_tax_bonus": true,
- "fees": {
- "acquisition": 10,
- "doc": 85,
- "filing": 30,
- "handling": 20,
- "inspection": 0,
- "license": 120.25,
- "misc": 0,
- "out_of_state": 0,
- "tire": 5
}, - "fees_to_tax": [
- "misc"
], - "total_fees": 235.25,
- "dealer_cash": 500,
- "total_bonus": 0,
- "nontaxable_bonus": 0,
- "taxable_bonus": 0,
- "rebate": 0,
- "nontaxable_rebate": 0,
- "taxable_rebate": 0,
- "total_coupon": 0,
- "add_on_discount": 0,
- "plans_discount": 0,
- "trade_equity": 0,
- "trade_tax_credit": 0,
- "due_at_signing": 24285.25,
- "due_at_signing_before_taxes_and_fees": 24050,
- "due_to_customer_at_signing": 0,
- "total_purchase_price": 24285.25,
- "total_purchase_price_before_taxes_and_fees": 24050,
- "total_cost": 24785.25,
- "total_cost_of_ownership": 24285.25,
- "total_contribution": 500,
- "profit": 0
}, - "data": {
- "plans": [
- {
- "retail_add_on_id": 1619,
- "taxable": true,
- "residualize": true,
- "title": "Vehicle Service Contract",
- "pricing_source": "static",
- "backend_profit": true,
- "product_code": "string",
- "price": 1915,
- "tier_code": "B67",
- "tier_mileage": 75000,
- "tier_term": 72,
- "tier_title": "6 years/ 75K miles",
- "surcharges": "string"
}
], - "accessories": "string",
- "vehicle": {
- "used": true,
- "demo": true,
- "certified": true,
- "stock_number": "NP10C107",
- "msrp": 24599,
- "invoice": 22854,
- "prices": {
- "base": 23574,
- "destination": 1025,
- "gas_guzzler": 0,
- "excise_tax": 0,
- "registration_fee": 0,
- "colors": 0,
- "packages": 0,
- "options": 0,
- "fees": 1025,
- "dio": 3299,
- "total": 27898,
- "tax_credit": 0
}, - "fees": [ ],
- "packages": [ ],
- "options": [ ],
- "interior_color": {
- "secondary_rgb": "string",
- "msrp": 0,
- "id": "8141459-2022-1049",
- "label": "Black Fabric",
- "rgb": 191919
}, - "exterior_color": {
- "secondary_rgb": "string",
- "msrp": 0,
- "id": "8141459-2022-1023",
- "label": "Classic Silver Metallic",
- "rgb": "E0E2E1"
}, - "premium_colors": [ ],
- "dealer_options": [
- {
- "name": "All Weather Mats",
- "msrp": 299,
- "residual": 0,
- "invoice_price": 299
}
], - "mpg": 34,
- "mileage": 0,
- "make": "Toyota",
- "model": "Corolla",
- "style_edmunds_id": "8141459-2022",
- "submodel": "Corolla",
- "title": "Corolla Nightshade",
- "trim": "Nightshade",
- "transmission": {
- "speeds": 0,
- "label": "Continuously Variable",
- "type": "Automatic"
}, - "drivetrain": "Front-Wheel Drive",
- "engine": {
- "horsepower": 169,
- "label": "2.0L 4 Cylinder",
- "mfg_code": "M20A-FKS",
- "type": "Gas"
}, - "dealer_name": "Livermore Toyota",
- "body": "Sedan",
- "weight": 3110,
- "year": 2022,
- "mfg_codes": [
- 1868
]
}, - "trade": {
- "valuation": {
- "valuation": {
- "trade_in_value": 5000,
- "trade_in_payoff": 5000,
- "trade_in_ownership": "financed",
- "trade_in_mileage": 98000
}
}
}
}
}, - "finance": {
- "id": 4550,
- "deal_type": "finance",
- "terms": {
- "interest_rate": 0.009,
- "effective_interest_rate": 0.009,
- "term": 60,
- "customer_cash": 5000,
- "minimum_customer_cash": 0,
- "maximum_customer_cash": 19600,
- "due_at_signing": 5000,
- "due_to_customer_at_signing": 0,
- "total_financed": 19785.25,
- "total_financed_before_subsidy": 19785.25,
- "total_interest": 455.75,
- "lender": "MAZ",
- "lender_name": "Mazda Financial Services",
- "program_name": "Mazda Financial Services (Special APR Program) Flat Fee Tier 1+ - Credit Score 720+ - Verify Eligibility - WA",
- "days_until_first_payment": 30,
- "msrp": 24550,
- "price": 24550,
- "base_price_before_taxes_and_fees": 24550,
- "base_price_after_fees": 24550,
- "total_add_ons": 0,
- "total_accessories": 0,
- "total_plans": 0,
- "total_taxable_add_ons": 0,
- "total_nontaxable_add_ons": 0,
- "total_purchase_price": 24785.25,
- "total_purchase_price_before_taxes_and_fees": 24550,
- "tax_rate": 0,
- "secondary_tax_rate": 0,
- "local_tax_rate": 0,
- "combined_tax_rate": 0,
- "sales_tax": 0,
- "primary_tax": 0,
- "secondary_tax": 0,
- "local_tax": 0,
- "stamp_tax": 0,
- "tax_surcharge": 0,
- "tax_adjustment": 0,
- "default_tax_bonus": true,
- "fees": {
- "acquisition": 10,
- "doc": 85,
- "filing": 30,
- "handling": 20,
- "inspection": 0,
- "license": 120.25,
- "misc": 0,
- "out_of_state": 0,
- "tire": 5
}, - "fees_to_tax": [
- "misc"
], - "total_fees": 235.25,
- "dealer_cash": 0,
- "total_bonus": 0,
- "nontaxable_bonus": 0,
- "taxable_bonus": 0,
- "rebate": 0,
- "nontaxable_rebate": 0,
- "taxable_rebate": 0,
- "total_coupon": 0,
- "add_on_discount": 0,
- "plans_discount": 0,
- "trade_equity": 0,
- "trade_tax_credit": 0,
- "payment_frequency": "month",
- "monthly_payment": 337.35,
- "biweekly_payment": 155.7,
- "weekly_payment": 77.85,
- "base_payment": 333.34,
- "monthly_payment_before_taxes_and_fees": 333.34,
- "weekly_payment_before_taxes_and_fees": 76.92,
- "biweekly_payment_before_taxes_and_fees": 153.84,
- "principal_for_normalized_payment": 1000,
- "normalized_monthly_payment": 17.05,
- "normalized_monthly_payment_for_taxable_add_ons": 0,
- "normalized_monthly_payment_for_nontaxable_add_ons": 0,
- "total_cost": 25241,
- "total_cost_of_ownership": 25241,
- "total_contribution": 0,
- "profit": 0
}, - "data": {
- "plans": [
- {
- "retail_add_on_id": 1619,
- "taxable": true,
- "residualize": true,
- "title": "Vehicle Service Contract",
- "pricing_source": "static",
- "backend_profit": true,
- "product_code": "string",
- "price": 1915,
- "tier_code": "B67",
- "tier_mileage": 75000,
- "tier_term": 72,
- "tier_title": "6 years/ 75K miles",
- "surcharges": "string"
}
], - "accessories": "string",
- "vehicle": {
- "used": true,
- "demo": true,
- "certified": true,
- "stock_number": "NP10C107",
- "msrp": 24599,
- "invoice": 22854,
- "prices": {
- "base": 23574,
- "destination": 1025,
- "gas_guzzler": 0,
- "excise_tax": 0,
- "registration_fee": 0,
- "colors": 0,
- "packages": 0,
- "options": 0,
- "fees": 1025,
- "dio": 3299,
- "total": 27898,
- "tax_credit": 0
}, - "fees": [ ],
- "packages": [ ],
- "options": [ ],
- "interior_color": {
- "secondary_rgb": "string",
- "msrp": 0,
- "id": "8141459-2022-1049",
- "label": "Black Fabric",
- "rgb": 191919
}, - "exterior_color": {
- "secondary_rgb": "string",
- "msrp": 0,
- "id": "8141459-2022-1023",
- "label": "Classic Silver Metallic",
- "rgb": "E0E2E1"
}, - "premium_colors": [ ],
- "dealer_options": [
- {
- "name": "All Weather Mats",
- "msrp": 299,
- "residual": 0,
- "invoice_price": 299
}
], - "mpg": 34,
- "mileage": 0,
- "make": "Toyota",
- "model": "Corolla",
- "style_edmunds_id": "8141459-2022",
- "submodel": "Corolla",
- "title": "Corolla Nightshade",
- "trim": "Nightshade",
- "transmission": {
- "speeds": 0,
- "label": "Continuously Variable",
- "type": "Automatic"
}, - "drivetrain": "Front-Wheel Drive",
- "engine": {
- "horsepower": 169,
- "label": "2.0L 4 Cylinder",
- "mfg_code": "M20A-FKS",
- "type": "Gas"
}, - "dealer_name": "Livermore Toyota",
- "body": "Sedan",
- "weight": 3110,
- "year": 2022,
- "mfg_codes": [
- 1868
]
}, - "trade": {
- "valuation": {
- "valuation": {
- "trade_in_value": 5000,
- "trade_in_payoff": 5000,
- "trade_in_ownership": "financed",
- "trade_in_mileage": 98000
}
}
}
}
}, - "lease": {
- "id": 4550,
- "deal_type": "lease",
- "terms": {
- "term": 36,
- "money_factor": 0.0031,
- "cap_cost": 21724.36,
- "residual_value": 15467,
- "base_residual_percent": 61,
- "residual_adjustment": 0,
- "annual_mileage": 12000,
- "excess_mileage": 0,
- "excess_mileage_charge": 0,
- "lender": "MAZDA",
- "lender_name": "Mazda Financial Services",
- "program_name": "Mazda Financial Services (Standard Lease Program)- Credit - Zero Sec. Dep. - WA",
- "msrp": 24550,
- "residual_msrp": 24550,
- "price": 24050,
- "net_purchase_price": 21074.36,
- "total_residualizable_add_ons": 0,
- "base_price_before_taxes_and_fees": 24050,
- "base_price_after_fees": 24050,
- "total_add_ons": 0,
- "total_plans": 0,
- "total_accessories": 0,
- "total_purchase_price": 24050,
- "total_purchase_price_before_taxes_and_fees": 24050,
- "tax_rate": 0,
- "secondary_tax_rate": 0,
- "local_tax_rate": 0,
- "combined_tax_rate": 0,
- "initial_tax": 0,
- "initial_primary_tax": 0,
- "initial_secondary_tax": 0,
- "local_tax": 0,
- "tax_surcharge": 0,
- "monthly_tax": 0,
- "tax_due_at_signing": 0,
- "total_tax_capitalized": 0,
- "effective_monthly_tax": 0,
- "default_tax_bonus": true,
- "total_bonus": 0,
- "nontaxable_bonus": 0,
- "taxable_bonus": 0,
- "rebate": 0,
- "nontaxable_rebate": 0,
- "taxable_rebate": 0,
- "dealer_cash": 500,
- "total_coupon": 0,
- "add_on_discount": 0,
- "plans_discount": 0,
- "trade_equity": 0,
- "trade_tax_credit": 0,
- "monthly_payment": 289.11,
- "biweekly_payment": 133.43,
- "weekly_payment": 66.71,
- "first_payment": 289.11,
- "first_payment_waiver": 0,
- "payment_frequency": "month",
- "base_payment": 289.11,
- "monthly_payment_before_taxes_and_fees": 269.04,
- "weekly_payment_before_taxes_and_fees": 62.08,
- "biweekly_payment_before_taxes_and_fees": 124.17,
- "principal_for_normalized_payment": 1000,
- "normalized_monthly_payment_for_nontaxable_nonresidualizable_add_ons": 0,
- "normalized_monthly_payment_for_nontaxable_residualizable_add_ons": 0,
- "normalized_monthly_payment_for_taxable_nonresidualizable_add_ons": 0,
- "normalized_monthly_payment_for_taxable_residualizable_add_ons": 0,
- "customer_cash": 3500,
- "due_at_signing": 3500,
- "due_to_customer_at_signing": 0,
- "desired_customer_cash": 3500,
- "security_deposit_due_at_signing": 0,
- "down_from_customer_cash": 2975.64,
- "minimum_customer_cash": 0,
- "maximum_customer_cash": 6200,
- "total_cost": 14407.96,
- "total_cost_of_ownership": 13907.96,
- "total_contribution": 500,
- "profit": 0,
- "fees": {
- "acquisition": 10,
- "doc": 85,
- "filing": 30,
- "handling": 20,
- "inspection": 0,
- "license": 120.25,
- "misc": 0,
- "out_of_state": 0,
- "tire": 5
}, - "fees_to_tax_at_signing": [
- "misc"
], - "fees_to_capitalize": [
- "acquisition"
], - "overage_charge": 0.15,
- "purchase_charge": 0,
- "total_fees_due_at_signing_except_acquisition_fee": 235.25,
- "total_fees_due_at_signing": 235.25,
- "total_fees_capitalized": 650
}, - "data": {
- "plans": [
- {
- "retail_add_on_id": 1619,
- "taxable": true,
- "residualize": true,
- "title": "Vehicle Service Contract",
- "pricing_source": "static",
- "backend_profit": true,
- "product_code": "string",
- "price": 1915,
- "tier_code": "B67",
- "tier_mileage": 75000,
- "tier_term": 72,
- "tier_title": "6 years/ 75K miles",
- "surcharges": "string"
}
], - "accessories": "string",
- "vehicle": {
- "used": true,
- "demo": true,
- "certified": true,
- "stock_number": "NP10C107",
- "msrp": 24599,
- "invoice": 22854,
- "prices": {
- "base": 23574,
- "destination": 1025,
- "gas_guzzler": 0,
- "excise_tax": 0,
- "registration_fee": 0,
- "colors": 0,
- "packages": 0,
- "options": 0,
- "fees": 1025,
- "dio": 3299,
- "total": 27898,
- "tax_credit": 0
}, - "fees": [ ],
- "packages": [ ],
- "options": [ ],
- "interior_color": {
- "secondary_rgb": "string",
- "msrp": 0,
- "id": "8141459-2022-1049",
- "label": "Black Fabric",
- "rgb": 191919
}, - "exterior_color": {
- "secondary_rgb": "string",
- "msrp": 0,
- "id": "8141459-2022-1023",
- "label": "Classic Silver Metallic",
- "rgb": "E0E2E1"
}, - "premium_colors": [ ],
- "dealer_options": [
- {
- "name": "All Weather Mats",
- "msrp": 299,
- "residual": 0,
- "invoice_price": 299
}
], - "mpg": 34,
- "mileage": 0,
- "make": "Toyota",
- "model": "Corolla",
- "style_edmunds_id": "8141459-2022",
- "submodel": "Corolla",
- "title": "Corolla Nightshade",
- "trim": "Nightshade",
- "transmission": {
- "speeds": 0,
- "label": "Continuously Variable",
- "type": "Automatic"
}, - "drivetrain": "Front-Wheel Drive",
- "engine": {
- "horsepower": 169,
- "label": "2.0L 4 Cylinder",
- "mfg_code": "M20A-FKS",
- "type": "Gas"
}, - "dealer_name": "Livermore Toyota",
- "body": "Sedan",
- "weight": 3110,
- "year": 2022,
- "mfg_codes": [
- 1868
]
}, - "trade": {
- "valuation": {
- "valuation": {
- "trade_in_value": 5000,
- "trade_in_payoff": 5000,
- "trade_in_ownership": "financed",
- "trade_in_mileage": 98000
}
}
}
}
}
}, - "programs": {
- "cash": {
- "deal_type": "finance",
- "incentives": [
- {
- "name": "first responders",
- "display_name": "Manufacturer First Responders Program",
- "cash": 750,
- "expires_at": "2021-03-31T00:00:00.000Z"
}
], - "rebate": 0,
- "rebates": [
- {
- "id": 910999,
- "program_id": "X202-210803-WE2-01",
- "name": "Manufacturer Rebate",
- "cash": 1500,
- "recipient": "Dealer",
- "expires_at": "2021-03-31T00:00:00.000Z"
}
]
}, - "finance": [
- {
- "expires_at": "2021-03-31T00:00:00.000Z",
- "min_score": 520,
- "deal_type": "finance",
- "term": 36,
- "interest_rate": 6.19,
- "incentives": [
- {
- "name": "first responders",
- "display_name": "Manufacturer First Responders Program",
- "cash": 750,
- "expires_at": "2021-03-31T00:00:00.000Z"
}
], - "rebates": [
- {
- "id": 910999,
- "program_id": "X202-210803-WE2-01",
- "name": "Manufacturer Rebate",
- "cash": 1500,
- "recipient": "Dealer",
- "expires_at": "2021-03-31T00:00:00.000Z"
}
]
}
], - "lease": [
- {
- "name": "Mazda Financial Services (Standard Lease Program)- Credit - Zero Sec. Dep. - WA",
- "expires_at": "2099-01-01T00:00:00.000Z",
- "lender": "MAZDA",
- "lender_name": "Mazda Financial Services",
- "min_score": 1,
- "deal_type": "lease",
- "term": 24,
- "money_factor": 3.1,
- "base_residual": 71,
- "base_annual_mileage": 15000,
- "incentives": [
- {
- "name": "first responders",
- "display_name": "Manufacturer First Responders Program",
- "cash": 750,
- "expires_at": "2021-03-31T00:00:00.000Z"
}
], - "rebates": [
- {
- "id": 910999,
- "program_id": "X202-210803-WE2-01",
- "name": "Manufacturer Rebate",
- "cash": 1500,
- "recipient": "Dealer",
- "expires_at": "2021-03-31T00:00:00.000Z"
}
]
}
]
}
}
You can get the F+I products catalog for a specific VIN and deal structure. This will include both static plan pricing as well as dynamic pricing provided from the product vendor.
dealer[partner_id] required | string The partner ID for the dealership |
vin required | string The vehicle identification number of the vehicle to fetch SPPs for. |
deal_type required | string The deal type if any to fetch SPPs for. One of "cash", "finance", "lease." Plans vary by deal type so this is required. |
deal_rate | number <float> The APR expressed as a percentage for the chosen deal. Required if the deal_type is "finance" or "lease." |
deal_term | integer Specific term requested for finance or lease deal_type. Required if deal_type is "finance" or "lease." |
amount_financed | integer The total amount financed. This is provided to some product providers in order to calculate dynamic prices. It is required if deal_type is "finance" or "lease." |
{- "plans": [
- {
- "grades": [
- "new"
], - "dpid": "hyundaidemo",
- "title": "Hyundai Protection Plan",
- "subtitle": "Hyundai Financial",
- "category": "Vehicle Service Contract",
- "description": "It's no secret that Hyundai owners have peace of mind when it comes to their vehicles. It's because for more than a decade Hyundai has led the industry with America's Best Warranty. And the Hyundai Protection Plan adds even more reasons for owners to rest easy with a comprehensive suite of extended vehicle protection products. From routine maintenance to extended mechanical coverage Hyundai Protection Plan is designed to protect you from unforeseen events and expenses resulting from everyday driving.",
- "taxable": true,
- "residualize": true,
- "vendor": "Hyundai Financial",
- "deal_types": [
- "cash"
], - "msrp": 0,
- "invoice_price": 0,
- "offer": 0,
- "cash_feature_rank": 1,
- "tiers": [
- {
- "title": "10 Years/100k Miles",
- "msrp": 1849,
- "invoice_price": 0,
- "offer": 1849,
- "code": "JBH",
- "state": "live",
- "term": 120,
- "mileage": 0
}
], - "backend_profit": true,
- "default_tier_index": 0,
- "id": 6160,
- "tier_is_selectable": true,
- "price_is_offline": true
}
]
}
Allows you to receive customer events at some HTTP endpoint of your choice.
When some customer event happens at a Roadster dealer partner we will send an HTTP POST request to a URL of your choice so that you can process these events as per your needs.
Roadster uses HTTP webhooks/callbacks to notify your application when a customer event happens at a dealer partner. For example like when a customer starts a purchase, an agent checks a customer in the showroom, or a customer reserves a vehicle.
You will notice that the customer events you receive will have more data as the customer or the agent move the purchasing process forward. Each subsequent event will have all the latest data as it relates to the purchase (vehicle, trade in, order, credit application). Note that message elements that are included in events like agent_sent_message will not be included in subsequent events and must be captured by your system if you want a history of these.
For each event occurrence, Roadster POSTs the event data to your endpoint in JSON format. The full event details are included and can be used directly after parsing the JSON into an Event object. Thus, at minimum, your endpoint needs to expect data through an HTTP POST request and confirm successful receipt of that data.
To acknowledge receipt of an event, your endpoint must return a 2xx HTTP status code to Roadster. All response codes outside this range, including 3xx codes, indicate to Roadster that you did not receive the event.
If Roadster does not receive a 2xx HTTP status code, the notification attempt is repeated. After multiple failures to send the notification, Roadster marks the event as failed and stops trying to send it to your endpoint. After multiple days without receiving any 2xx HTTP status code responses, Roadster emails you about your failed endpoint, and automatically disables it soon after if unaddressed.
Because properly acknowledging receipt of the event callback is so important, your endpoint should return a 2xx HTTP status code prior to any complex logic that could take enough time to cause the HTTP connection to timeout.
Since all these events pertain to a customer, it is optional for you to return your customer event identifiers as a JSON response and we will send it in subsequent events so that you may use it to look up the customer on your system. Your response should be of mimetype application/json
and should be proper JSON with the format exactly as below:
{ "customer_id": "YCid6453", "lead_id": "YLid6459", "agent_id": "YAid007", "dealer_id": "YDid004" }
Any JSON elements not listed above will be ignored by Roadster.
Note that there could be some subsequent customer events that may not have the data you send back if they were scheduled for delivery before we received and processed your response.
The section below details what these customer event callback messages look like.
{- "customer_id": "YCid6453",
- "lead_id": "YLid6459",
- "agent_id": "YAid007",
- "dealer_id": "YDid004"
}
{- "event_type": "agent_sent_message",
- "customer": {
- "address": {
- "address1": null,
- "address2": null,
- "city": "Palo Alto",
- "country": "US",
- "state": "CA",
- "zip": "94020"
}, - "email": "customer@example.com",
- "first_name": "Carlos",
- "id": 2285882,
- "last_name": "Silva",
- "middle_name": null,
- "mobile": null,
- "phone": "+14444444444",
- "communication_preference": "email",
- "in_showroom": false,
- "gov_id": "12345678",
- "gov_id_type": "dni",
- "referral_type": "api"
}, - "dealer": {
- "address": {
- "city": "Fresno",
- "state": "CA",
- "street": "50 W Bullard Ave",
- "zip": "93704"
}, - "dpid": "toyotademo",
- "name": "Toyota Demo",
- "partner_id": "12345"
}, - "message": {
- "body": "Carlos, if you're still interested in the Camry, now’s the time to complete your identity verification: https://toyotademo.roadster.com/purchase?utm_source=Roadster&utm_medium=email&utm_campaign=os_cta_credit#credit",
- "channels": [
- "email",
- "sms"
], - "from": "Judy Agent",
- "from_email": "2285882-367146@incoming.roadster.com",
- "subject": "Reminder: Complete your Toyota Camry purchase.",
- "to": "Carlos Garcia",
- "to_email": "customer@example.com"
}, - "vehicle": {
- "vin": "4T1C11AK0LU322811",
- "make": "Toyota",
- "model": "Camry",
- "year": 2020,
- "trim_code": "C4308",
- "exterior_color_code": "LA10",
- "interior_color_code": 218,
- "option_codes": [
- "PF5"
], - "stock_number": null,
- "trim": "LE",
- "type": "New"
}, - "order": {
- "financing": {
- "doc_fee": 86,
- "down_payment": 0,
- "license_fee": 1136.75,
- "monthly_payment": null,
- "msrp": 26184,
- "purchase_price": 23827,
- "rebate": 1500,
- "term": null,
- "type": "cash"
}, - "id": 367146,
- "plans": [
- {
- "backend_profit": true,
- "price": 695,
- "residualize": false,
- "retail_add_on_id": 1614,
- "taxable": false,
- "tier_code": "TM59",
- "tier_mileage": null,
- "tier_term": 60,
- "tier_title": "5 years/ 9 service intervals",
- "title": "Delivery"
}, - {
- "backend_profit": true,
- "price": 2470,
- "residualize": false,
- "retail_add_on_id": 1619,
- "taxable": false,
- "tier_code": "B80",
- "tier_mileage": 100000,
- "tier_term": 96,
- "tier_title": "8 years/ 100K miles",
- "title": "Vehicle Service Contract"
}
], - "accessories": [
- {
- "retail_accessory_id": 2023988,
- "taxable": true,
- "title": "Cargo Area Cover",
- "installed_price": 196,
- "residual_amount": 0,
- "labor_calc": "included",
- "backend_profit": false,
- "residualize": false
}
]
}, - "credit_applicant": {
- "first_name": "Carlos",
- "last_name": "Roadster",
- "email": "steve.mcqueen@example.com",
- "home_phone": "+14155556666",
- "work_phone": "+14155556666",
- "license_number": "A225544",
- "license_state": "CA",
- "birth_date": "1980-11-23T00:00:00.000Z",
- "ssn": "123-34-4567",
- "addresses": [
- {
- "address": "1200 First St.",
- "city": "El Cajon",
- "state": "CA",
- "zip": 92020,
- "country": "US",
- "years": 3,
- "months": 3,
- "own_rent": "own",
- "housing_cost": 4205
}
], - "jobs": [
- {
- "address": {
- "country": "US",
- "address": "123 Third St.",
- "city": "Palo Alto",
- "state": "CA",
- "zip": 94042
}, - "employer": "Roadster Inc.",
- "job_title": "Sr. Engineer",
- "phone": "+14155556666",
- "income": 4100,
- "years": 0,
- "months": 7,
- "other_income": 250,
- "other_sources": "Other"
}
], - "relative": {
- "address": {
- "country": "US",
- "address": "8834 Seventh St.",
- "city": "San Sebastian",
- "state": "CO",
- "zip": 43221
}, - "first_name": "Ed",
- "last_name": "Fitz",
- "relationship": "Aunt",
- "phone": "+14155556666"
}, - "references": [
- {
- "address": {
- "county": "US",
- "address": "4848 Fifth St.",
- "city": "Santa Clara",
- "state": "NY",
- "zip": 95050,
- "country": "USA"
}, - "first_name": "Don",
- "last_name": "Juan",
- "relationship": "Uncle",
- "phone": "+14155556666"
}
], - "which_form": "long_credit_app",
- "terms_and_conditions_accepted_at": "2021-01-21T20:29:02.000Z",
- "ip_address": "192.168.1.77"
}, - "credit_decision": {
- "status": "approved",
- "finance_company": "CapitalOne",
- "application_number": "T1925843",
- "term": 72,
- "rate": 4.7,
- "customer_money_factor": 0.00375,
- "lender_money_factor": 0.003,
- "payment": 602.79,
- "residual": 21606.55,
- "approved_amount": 42295,
- "min_down_payment": 3000,
- "stipulations": "Vehicle must be for personal use. Contracts indicating use for any other purpose will be returned.",
- "comments": "Attn dealer, this deal qualifies for a reduced fee!",
- "max_loan": 42295,
- "min_loan": 42295,
- "expires_at": "2021-02-21T13:29:02-07:00",
- "received_at": "2021-01-21T13:29:02-07:00"
}, - "agent": {
- "email": "judy_agent@example.com",
- "full_name": "Judy Agent",
- "id": 94366
}, - "api_partner": {
- "name": "api.partner",
- "customer_id": "YCid6453",
- "lead_id": "YLid6459",
- "agent_id": "YAid007",
- "dealer_id": "YDid004"
}, - "event_time": "2020-07-18T13:29:02-07:00",
- "event_id": "51jf4co07c8m7b2pbiw4jyxy8"
}
You can upload user or deal documents for a customer in the Roadster Express Strorefront for a specified dealer.
A request to the upload user or deal document endpoint will upload the docs (driver's license, license back, insurance, income, residence, other) into the User Doc-Binder and deal docs to Deal Doc-Binder.
Request Payload
object or object (Dealer) Parameters to identify the dealership against which the call is being made. | |
document_name required | string Document name |
document_type required | string Enum: "license" "license_back" "insurance" "income" "residency" "other" "deal" Document type being uploaded. Accepted user-doc types - license, license_back, insurance, income, residency, other. Accepted deal-doc types - deal |
file_name required | string File name with valid file extension (.jpg .jpeg .png .pdf) |
relationship | string Enum: "self" "co_app" Specify whether the uploaded document is for the buyer or co-buyer. Required only if uploading user documents |
co_app_email_id | string Co-buyer email id. Required when relationship is 'co_app' while uploading user document |
contents required | string base64 encoded content |
{- "dealer": {
- "dpid": "umazda"
}, - "document_name": "DL Front",
- "document_type": "license",
- "file_name": "license front.png",
- "relationship": "self",
- "co_app_email_id": "testcoapp@gmail.com",
- "contents": "Base64 content"
}
{- "document_id": 1602287
}
You can fetch the list of upload user and/ or deal documents uploaded for a customer in the Roadster Express Strorefront for a specified dealer.
id required | integer The Roadster customer ID |
Request Payload
object or object (Dealer) Parameters to identify the dealership against which the call is being made. | |
doc_type required | string Enum: "user_docs" "deal_docs" "all" Document type to be fetched |
{- "dealer": {
- "dpid": "umazda"
}, - "doc_type": "user_docs"
}
[- {
- "id": 1602273,
- "document_type": "license",
- "relationship": "self",
- "name": "dl front",
- "file_name": "image.png",
- "created_at": "2024-02-26T17:35:43.741Z",
- "updated_at": "2024-02-26T17:35:43.741Z"
}
]
You can delete one or multiple user and deal documents uploaded in the Roadster Express Strorefront for the specified customer.
id required | integer The Roadster customer ID |
Request Payload
object or object (Dealer) Parameters to identify the dealership against which the call is being made. | |
doc_ids required | Array of integers Document ids to be deleted |
{- "dealer": {
- "dpid": "umazda"
}, - "doc_ids": [
- 1
]
}
{- "message": "Successfully deleted document"
}
You can fetch the content for a document in the Roadster Express Strorefront for the specified customer.
id required | integer The Roadster customer ID |
doc_id required | integer The Roadster document ID |
Request Payload
object or object (Dealer) Parameters to identify the dealership against which the call is being made. |
{- "dealer": {
- "dpid": "umazda"
}
}
{- "contents": "Base64 content"
}
Warning! These are endpoints that are currently in development and will change without notice until they reach a stable state for public release. You may not have access to all of these endpoints with your production token.
You can get a list of new vehicles in a dealer's inventory from this endpoint.
Vehicles are sorted by VIN to ensure a unique sort order.
To paginate, use the from_vin
parameter.
To query for updates since the last fetch, use the updated_since
and in_stock
parameters.
dpid required | string Example: dpid=hyundaidemo The dealer partner ID |
size | number The number of results to return |
from_vin | string To paginate results, pass the VIN of the last result, and the subsequent |
updated_since | number Example: updated_since=1678812101 To fetch updates since a given timestamp, pass the timestamp as seconds since the epoch. |
in_stock | string Pass |
{- "vehicles": [
- {
- "make": "Hyundai",
- "model": "Elantra",
- "year": 2022,
- "trim": "SEL",
- "body": "Sedan",
- "drivetrain": "Front-Wheel Drive",
- "vin": "string",
- "stock_number": "string",
- "in_stock": true,
- "reserved": false,
- "engine": {
- "label": "string",
- "type": "Hybrid"
}, - "transmission": {
- "label": "string",
- "type": "Automatic"
}, - "exterior_color": {
- "label": "string",
- "rgb": "4D4A47",
- "generic": "silver",
- "msrp": 0
}, - "interior_color": {
- "label": "string",
- "rgb": "3F3F3F",
- "generic": "black",
- "msrp": 0
}, - "packages": [
- {
- "name": "string",
- "msrp": 0
}
], - "options": [
- {
- "name": "string",
- "msrp": 0
}
], - "dealer_options": [
- {
- "name": "string",
- "msrp": 0
}
]
}
], - "total": 0
}
You can get detailed information about a vehicle in a dealer's inventory through using this endpoint.
dealer[partner_id] required | string The partner ID for the dealership |
{- "vehicle_info": {
- "make": "Hyundai",
- "model": "Elantra",
- "year": 2022,
- "trim": "SEL",
- "city_mpg": 31,
- "highway_mpg": 41,
- "ev_range": 256,
}
}
Warning! These are endpoints that are currently in development and will change without notice until they reach a stable state for public release. You may not have access to all of these endpoints with your production token.
Templates are a definition of a document and all of the dynamic content it contains. A dealership will have multiple stored templates that contain a filename and X-Y coordinates of content that the document requires for consumer or dealer execution. Get a list of all document templates created for a specific dealership.
dpid required | string Roadster's identifier for the dealership |
[- {
- "name": "Insurance Acknowledgement",
- "file_name": "Hyunda Lease Insurance.pdf",
- "description": "This is for insurance details",
- "form_definition": {
- "pages": [
- {
- "fields": [
- {
- "x": 96,
- "y": 555,
- "name": "vehicleYear_1",
- "type": "vehicleYear",
- "width": 40,
- "height": 12,
- "signee": "__customer__",
- "fontSize": 8,
- "formLabel": "Year",
- "agentFilledRequired": false
}
]
}
]
}, - "id": 278,
- "doc_identifier": "7b9b99ba-2bb7-4e63-b238-7ba7a5f03fce",
- "created_at": "2021-07-14T22:44:42.698Z",
- "updated_at": "2022-03-11T18:49:50.245Z",
- "is_deleted": false,
- "order_id": null
}
]
Create a template that can be used by the dealership to generate forms for their customers. The template should describe all of the expected fields and include a base64 encoded file in PDF format.
Request Payload
required | object (TemplateRequest) An object describing the document template |
file_stream required | string A base64 encoded string version of the PDF document including the header |
{- "form_data": {
- "name": "Insurance Acknowledgement",
- "file_name": "Hyunda Lease Insurance.pdf",
- "description": "This is for insurance details",
- "form_definition": {
- "pages": [
- {
- "fields": [
- {
- "x": 96,
- "y": 555,
- "name": "vehicleYear_1",
- "type": "vehicleYear",
- "width": 40,
- "height": 12,
- "signee": "__customer__",
- "fontSize": 8,
- "formLabel": "Year",
- "agentFilledRequired": false
}
]
}
]
}
}, - "file_stream": "data:application/pdf;charset=utf-8;base64,BASE64_ENCODED_STRING"
}
{- "expiration": "string",
- "etag": "e9feaffe16bb3a6fad362a99294ad2d0",
- "checksum_crc32": "string",
- "checksum_crc32c": "string",
- "checksum_sha1": "string",
- "checksum_sha256": "string",
- "server_side_encryption": "string",
- "version_id": "string",
- "sse_customer_algorithm": "string",
- "sse_customer_key_md5": "string",
- "ssekms_key_id": "string",
- "ssekms_encryption_context": "string",
- "bucket_key_enabled": "string",
- "request_charged": "string"
}
Get all the details associated with a specific dealership template.
dpid required | string Roadster's identifier for the dealership |
template_id required | string The unique identifier for the template |
{- "name": "Insurance Acknowledgement",
- "file_name": "Hyunda Lease Insurance.pdf",
- "description": "This is for insurance details",
- "form_definition": {
- "pages": [
- {
- "fields": [
- {
- "x": 96,
- "y": 555,
- "name": "vehicleYear_1",
- "type": "vehicleYear",
- "width": 40,
- "height": 12,
- "signee": "__customer__",
- "fontSize": 8,
- "formLabel": "Year",
- "agentFilledRequired": false
}
]
}
]
}, - "id": 278,
- "doc_identifier": "7b9b99ba-2bb7-4e63-b238-7ba7a5f03fce",
- "created_at": "2021-07-14T22:44:42.698Z",
- "updated_at": "2022-03-11T18:49:50.245Z",
- "is_deleted": false,
- "order_id": null
}
Get the file from a dealership template encoded as a base64 string
dpid required | string Roadster's identifier for the dealership |
template_id required | string The unique identifier for the template |
"JVBERi0xLjUNJeLjz9MNCjI0IDAgb2JqDTw8L0xpbmVhcml6ZWQgMS9MIDE4ODI0NS9PIDI2L0UgMTgzNjA5L04gMS9UIDE4Nzk0NC9IIFsgNDY3IDE1OV0+Pg1lbmRvYmoNICAgICAgICAgICAgICAgIA0zMyAwIG9iag08PC9EZWNvZGVQYXJtczw8L0NvbHVtbnMgNS9QcmVkaWN0b3IgMTI+Pi9GaWx0ZXIvRmxhdGVEZWNvZGUvSURbPEIzOURBQ0QyNjc2OTA4NDE4QUM4OUFEMTVENTRCNkNEPjxBQ0RGNkJCRTYwN0M0QjhBODk1QTAyRTdDQ0MzODVCMD5dL0luZGV4WzI0IDE5XS9JbmZvIDIzIDAgUi9MZW5ndGggNjcvUHJldiAxODc5NDUvUm9vdCAyNSAwIFIvU2l6ZSA0My9UeXBlL1hSZWYvV1sxIDMgMV0+PnN0cmVhbQ0KaN5iYmRgEGBgYmBgSgKRDBVgtjeYrAeR7KxAkjHaB0Q6mIJERGYCyX8uCxmYgHqXg3UxMBJF/mdg3PETIMAAwWsI/A1lbmRzdHJlYW0NZW5kb2JqDXN0YXJ0eHJlZg0wDSUlRU9GDSAgICAgICAgIA00MiAwIG9iag08PC9DIDc4L0ZpbHRlci9GbGF0ZURlY29kZS9JIDEwMC9MZW5ndGggNzUvUyAzOD4+c3RyZWFtDQpo3mJgYGBnYGDyZgASp/wZUAEjELMwcDQgi7FDMQOjN4MgkPJl2B46QfJ7gK+FnBlED9NZS4heJh+4LhYGprvuUBMfAQQYAM1+Ce8NZW5kc3RyZWFtDWVuZG9iag0yNSAwIG9iag08PC9MYW5nKGVuLVVTKS9NYXJrSW5mbzw8L01hcmtlZCB0cnVlPj4vTWV0YWRhdGEgMiAwIFIvUGFnZXMgMjIgMCBSL1N0cnVjdFRyZWVSb290IDYgMCBSL1R5cGUvQ2F0YWxvZz4+DWVuZG9iag0yNiAwIG9iag08PC9Db250ZW50cyAyOCAwIFIvQ3JvcEJveFswIDAgNjEyIDc5Ml0vR3JvdXA8PC9DUy9EZXZpY2VSR0IvUy9UcmFuc3BhcmVuY3kvVHlwZS9Hcm91cD4+L01lZGlhQm94WzAgMCA2MTIgNzkyXS9QYXJlbnQgMjIgMCBSL1Jlc291cmNlczw8L0V4dEdTdGF0ZTw8L0dTNyAzNCAwIFIvR1M4IDM1IDAgUj4+L0ZvbnQ8PC9GMSAzOCAwIFIvRjIgNDEgMCBSPj4vUHJvY1NldFsvUERGL1RleHQvSW1hZ2VCL0ltYWdlQy9JbWFnZUldL1hPYmplY3Q8PC9JbWFnZTExIDMyIDAgUj4+Pj4vUm90YXRlIDAvU3RydWN0UGFyZW50cyAwL1RhYnMvUy9UeXBlL1BhZ2U+Pg1lbmRvYmoNMjcgMCBvYmoNPDwvRmlsdGVyL0ZsYXRlRGVjb2RlL0ZpcnN0IDUzL0xlbmd0aCA1NDUvTiA4L1R5cGUvT2JqU3RtPj5zdHJlYW0NCmjenJRta9swEMe/"
Forms are the application of a document template against a specific order. This action will generate a new document packet of forms that the consumer and dealer are required to complete as part of the transaction.
It's important to note that forms are specific to an order and therefor cannot be created without an exisiting order id.
When forms are created, the template is autofilled with the details of the order (consumer, dealer, deal, vehicle, lender information) and then made available to the consumer and dealer for electronic signatures.
Request Payload
title required | string A title for the document packet |
template_ids required | Array of integers An array containing one or more templates that will be added to the document packet |
{- "title": "Your title documents for review",
- "template_ids": [
- 1490
]
}
{ }