API Documentation
Last Updated: May 16, 2025
1. Authentication
To authenticate your request, you'll use Basic HTTP authentication with the dealer ID as the user and the API Key as the password. For example, with the following details:
Dealer ID (user): 123456
API Key (pass): k5MBy1Z378eaP3LTuo8zKegIRHPpOaAG
Base64 Encode: 123456:k5MBy1Z378eaP3LTuo8zKegIRHPpOaAG
Base64 Encoded: MTIzNDU2Oms1TUJ5MVozNzhlYVAzTFR1bzh6S2VnSVJIUHBPYUFH
You would include an authorization header like the following:
Authorization: Basic MTIzNDU2Oms1TUJ5MVozNzhlYVAzTFR1bzh6S2VnSVJIUHBPYUFH
2. Obtain Credentials
To obtain credentials for your API requests, you'll need to login to a DTS account, go to Manage > Settings, click to the API tab, and then copy your dealer ID and API key.
3. Test Credentials
To make testing easy, we've provided some test credentials below. You do not need to a test account. When you receive a 200 response from the API while using the test credentials, it means your request was properly validated and will be accepted with a production account.
Dealer ID: sandbox
API Key: Ulk4bIJXvtWwJhxOWCOT4QV6Y99scC7T
If you would like to use a sandbox account to verify your submission is being mapped properly, please reach out to support@dealertitlesolutions.com. Sandbox accounts are only provided in limited cases with high-volume partners.
4. Make a Request
API Endpoint/URL
https://app.dealertitlesolutions.com/api/public/createTitleTransaction
All requests must be made with a JSON body and a Content-Type: application/json header. The following is a sample request:
{
"DealNumber": "123456",
"StockNumber": "A123456",
"SaleDate": "2023-01-01",
"TaxableSale": 15421.15,
"HasLien": true,
"TotalOfPayments": "21051.23",
"Vin": "1FTFW1EG2JKD33956",
"Year": 2018,
"Make": "Ford",
"Model": "F-150",
"ExteriorColor": "White",
"MSRP": 42510,
"CurbWeightRating": 4912,
"GrossVehicleWeightRating": 7050,
"FuelType": "Gas",
"OdometerReading": 119892,
"OdometerStatus": "Actual",
"BuyerNameFirst": "Johnny",
"BuyerNameMiddle": "Allen",
"BuyerNameLast": "Appleseed",
"BuyerNameSuffix": "",
"BuyerDateOfBirth": "1990-01-01",
"BuyerIdentificationDocumentNumber": "123456789",z
"BuyerIdentificationDocumentType": "Driver's License",
"BuyerIdentificationDocumentState": "CO",
"BuyerIdentificationDocumentExpiration": "2029-01-01",
"HasCoBuyer": true,
"CoBuyerNameFirst": "Jane",
"CoBuyerNameMiddle": "Renee",
"CoBuyerNameLast": "Appleseed",
"CoBuyerNameSuffix": "",
"Address": "1234 15th St",
"City": "Golden",
"State": "CO",
"Zip": "80401-6101",
"DifferentMailingAddress": true,
"MailingAddress": "1234 Main St",
"MailingCity": "Grand Junction",
"MailingState": "CO",
"MailingZip": "81501"
}
5. Parameters
The below paramters can be included in the request. The only required field is to include the DealNumber and/or the StockNumber. All other fields are optional and will not be created or updated unless included with a value.
Our recommendation is to test with the sample JSON request above and our sample credentials. Then, make all the necessary changes to get a 200 success code. At that point, your call should be ready for production and you can retrieve the API credentials from the settings page of the dealership you're working with.
Parameter | Acceptable Values | Descrption |
---|---|---|
DealNumber | String with 1-10 characters | Either a Deal Number or a Stock Number is required to create a title transaction, and is used to prevent duplicates. If an existing transaction already has the submitted deal number, it will update the existing information. |
StockNumber | String with 1-10 characters | Either a Deal Number or a Stock Number is required to create a title transaction, and is used to prevent duplicates. If an existing transaction already has the submitted stock number, it will update the existing information. |
SaleDate | Date in the format of YYYY-MM-DD | The sale date of the vehicle. This must be exactly the same on all documentation. |
TaxableSale | Float | The total taxable value of the sale, after any trade credits or deductions. |
HasLien | Boolean | If the vehicle is financed or has a lien, set this field to `true` and include the `TotalOfPayments`. |
TotalOfPayments | Float | The total of payments as shown in the Truth in Lending section of the security agreement. This will be used as the lien amount when filing lien. |
Vin | 17 character long string. | |
Year | Integer between 1981 and 2099 | |
Make | String with 1-30 characters | |
Model | String with 1-30 characters | |
ExteriorColor | Beige, Black, Blue, Beige, Cream, Gold, Gray, Green, Maroon, Beige, Purple, Red, Tan, White, Yellow | |
MSRP | Float | |
CurbWeightRating | Integer | |
GrossVehicleWeightRating | Integer | |
FuelType | Gas, Flex Fuel - E85, Hybrid, Hybrid Plug-In, Electric, Diesel, Diesel (B20 Capable), Diesel/Electric Hybrid, Natural Gas, Natural Gas/Propane, Propane, E85 (old) | |
OdometerReading | Integer | The odometer reading as disclosed on the sale date. |
OdometerStatus | Actual, Exempt, Not Actual Mileage | |
BuyerNameFirst | String with 1-25 characters | The first name of the buyer as it appears on their SVID |
BuyerNameMiddle | String with 1-25 characters | The middle name of the buyer as it appears on their SVID |
BuyerNameLast | String with 1-40 characters | The last name of the buyer as it appears on their SVID |
BuyerNameSuffix | Junior, Senior, 1st, 2nd, 3rd, 4th, 5th, 6th, 7th, 8th, 9th, I, II, III, IV, IX, V, VI, VII, VIII | |
BuyerDateOfBirth | Date in the format of YYYY-MM-DD. | |
BuyerIdentificationDocumentNumber | String with 1-25 characters | The identification number of the buyer's SVID |
BuyerIdentificationDocumentType | Driver's License, State ID Card, Passport | |
BuyerIdentificationDocumentState | String with 2 characters | |
BuyerIdentification DocumentExpiration | Date in the format of YYYY-MM-DD. | |
HasCoBuyer | Boolean | If two names are being placed on the title, set this field to `true` and include the `CoBuyer` fields in your request |
CoBuyerNameFirst | String with 1-25 characters | |
CoBuyerName Middle | String with 1-25 characters | |
CoBuyerNameLast | String with 1-40 characters | |
CoBuyerNameSuffix | Junior, Senior, 1st, 2nd, 3rd, 4th, 5th, 6th, 7th, 8th, 9th, I, II, III, IV, IX, V, VI, VII, VIII | |
Address | String with 1-255 characters | The physical address for the customer |
City | String with 1-50 characters | |
State | String with 2 characters | |
DifferentMailingAddress | Boolean | If the mailing address for the buyer is different, set this field to `true` and include the `MailingAddress` fields in your request. |
MailingAddress | String with 1-255 characters | |
MailingCity | String with 1-50 characters | |
MailingState | String with 2 characters | |
MailingZip | Accepts 5 digit ZIP and ZIP+4 |
Transform Your Title Processing
Ready to see how swift and simple title processing can be? Get your first dealership resale title on us.
