v3.0.0
33
API Endpoints
50
US States Supported
REST
API Architecture
JSON
Data Format

ATC Portal API v3.0

Streamline your vehicle registration and titling workflow with our comprehensive API. Built for dealerships, fleet managers, and automotive professionals who need reliable, state-compliant vehicle registration services.

🚀 Getting Started

1. Get Your API Token

Contact your ATC representative to obtain your API authentication token

2. Try Interactive API

Use our search-enabled interactive API explorer to test endpoints

3. Check Examples

Review code samples in JavaScript, Python, and C# to get started quickly

🚗 Vehicle Registration

Complete vehicle registration with all required state-specific information, supporting both individual and business customers across all 50 US states.

🔍 VIN Management

Register and decode VINs with detailed vehicle information retrieval, supporting all major vehicle types from motorcycles to commercial vehicles.

📊 Transaction Processing

Real-time transaction tracking with status updates, quote management, and comprehensive transaction history for all your registrations.

💰 Fee Calculations

Automatic DMV fee calculation with tax computations, state-specific rates, and detailed fee breakdowns for accurate pricing.

📦 Shipment Tracking

Track plates and documents with integrated carrier tracking, delivery notifications, and shipping address management.

📄 Document Management

Secure document upload and storage for titles, registrations, and supporting documentation with transaction linking.

API Endpoints Overview

Vehicle Registration

  • RegisterVehicle - Complete registration
  • RegisterVehicleAlternate - Alternative method
  • RegisterVIN - VIN registration only
  • RegisterVINAlternate - Alternative VIN method

Transaction Management

  • GetTransactionRecord - Single record
  • GetTransactionRecords - Multiple records
  • GetTransactionRecordsByStatus - Filter by status
  • SaveTransactionNotes - Add notes

Fees & Information

  • GetTaxableInfo - Tax calculations
  • GetAtcFees - ATC fee structure
  • GetCustomerFees - Customer-specific fees
  • GetFinalFees - Complete fee breakdown

Support Services

  • GetDealerSummary - Dealer information
  • GetCustomers - Customer management
  • GetShipmentInformation - Tracking
  • GetVinInfo - VIN details

Why Choose ATC Portal API?

  • State Compliance: Fully compliant with all 50 US state registration requirements
  • Real-time Processing: Instant DMV fee calculations and transaction updates
  • Comprehensive Coverage: Support for Purchase, Lease, and other transaction types
  • Flexible Integration: RESTful API design with comprehensive documentation
  • Secure & Reliable: Enterprise-grade security with 99.9% uptime
  • Expert Support: Dedicated API support team and comprehensive examples

API Endpoints (33 Total)

Vehicle Registration (4)

POST
/RegisterVehicle
Register a vehicle with full details
POST
/RegisterVehicleAlt
Alternative registration method
POST
/RegisterVIN
Register using VIN with auto-decode
POST
/RegisterVINAlt
Alternative VIN registration

Transaction Retrieval (9)

GET
/GetDealerSummary
Dealer summary info
GET
/GetCustomers
List dealer customers
GET
/GetTransactionRecord
Single transaction by quote
GET
/GetTransactionRecords
Multiple transactions with filters
GET
/GetTransactionRecordsByStatus
Filter by workflow status
GET
/GetTransactionRecordsByTransactionStatus
Filter by internal status
GET
/GetUpdatedQuoteNames
Quotes updated in date range
GET
/GetUpdatedTransactionRecordsByInterval
Recent updates by interval
GET
/GetTransactionStatusHistoryByQuoteName
Status change history

Tax & Fee Information (6)

POST
/GetTaxableInfo
Calculate taxes
GET
/GetQuoteDMVInfo
DMV info for quote
GET
/GetAtcFees
ATC fees (internal)
GET
/GetCustomerFees
Customer-facing fees
GET
/GetFinalFees
Final fee calculation
GET
/GetInvoiceDetailsByQuoteName
Detailed invoice

Needs Notice (4)

GET
/GetTransactionNeedsNoticeItems
Needs notice items
GET
/GetTransactionNeedsNoticeItemsAndComments
Items with comments
POST
/SaveDealerNeedsNoticeComment
Add comment to item
GET
/GetUnreadATCNeedsNoticeCommentsByInterval
Unread ATC comments

Customer Management (4)

GET
/GetCustomerContactsByCustomerId
List customer contacts
POST
/AddCustomerContact
Add new contact
POST
/ChangeCustomerContactRole
Change contact role
POST
/DeleteCustomerContact
Delete a contact

Reference & Utilities (6)

GET
/GetDMVTurnaroundInfo
DMV processing times
GET
/GetActiveQuotesLink
Portal link for quote
GET
/GetVinInfo
Decode VIN information
GET
/GetShipmentInformation
Shipment tracking
POST
/SaveTransactionRecordDocuments
Upload PDF documents
POST
/SaveTransactionNotes
Add transaction notes

Schema Reference

Complete reference tables showing all API fields, their types, requirements, and valid values.

Vehicle Information Fields

Field Name Type Required Valid Values Description
vin string Yes 17-character VIN Vehicle Identification Number
state string Yes AlabamaAlaskaArizonaArkansasCaliforniaColoradoConnecticutDelawareFloridaGeorgiaHawaiiIdahoIllinoisIndianaIowaKansasKentuckyLouisianaMaineMarylandMassachusettsMichiganMinnesotaMississippiMissouriMontanaNebraskaNevadaNew HampshireNew JerseyNew MexicoNew YorkNorth CarolinaNorth DakotaOhioOklahomaOregonPennsylvaniaRhode IslandSouth CarolinaSouth DakotaTennesseeTexasUtahVermontVirginiaWashingtonWest VirginiaWisconsinWyoming US State for registration
county string Yes County name County within the state
city string Yes City name City for registration
zipcode integer Yes 5-digit ZIP code Postal code
transactionType string Yes PurchaseLease Type of vehicle transaction
vehicleType string Yes Passenger VehiclePick-up TruckMotorcycleTravel TrailerMotor HomeCab & ChassisDelivery VehicleSUV Primary vehicle category
vehicleSubType string No Semi-TrailersTravel TrailersUtilityHouseHomemadeCampingBoatHeavy DutyMedium DutyCab and ChassisFarm UseSchoolTourismNonprofitTransitRecreationalOHV/ATVSnowmobileMotorbikePersonal WatercraftUTV Vehicle sub-category
modelYear integer Yes 4-digit year Vehicle model year
model string Yes Model name Vehicle model
make string Yes Manufacturer name Vehicle manufacturer
bodyStyle string No CAB & CHASSISCOUPECONVERTIBLEHATCHBACKMOTORCYCLEMOTORHOMESEDANSTATIONWAGONSPORT UTILITY VEHICLETRAILERTRUCKUTILITYVANWAGON Vehicle body style
color string No BLACKBROWNBLUEGREYSILVERREDGREENPURPLEPINKORANGEMAROONGOLDTANWHITEYELLOWBRONZE Vehicle color
fuelType string No GasElectricDieselHybrid Fuel/power type
plateType string No RegularCommercial License plate type
titleStatus string No MCOTitle Title document status
vehiclePossessionType string No DealershipResidence Where vehicle is located

Driver Information Fields

Field Name Type Required Valid Values Description
driverCategory string Yes IndividualBusiness Type of driver/owner
firstName string Yes Text Driver's first name
lastName string Yes Text Driver's last name
state string Yes Same as vehicle states above Driver's state

Mailing & Contact Fields

Field Name Type Required Valid Values Description
mailingInstruction string No DealerDriver Where to send documents
state string No Same as vehicle states above Mailing address state

💡 Quick Tips

  • Fields marked Yes are required and must be provided
  • Enum fields have dropdown menus in the Interactive API tab
  • State fields all use the same 50 US state values
  • Use the exact spelling and capitalization shown for enum values

Field Values Reference

Complete reference of all accepted values for enumerated fields in the API.

Vehicle Information Fields

vehicleType

Passenger Vehicle Pick-up Truck Motorcycle Travel Trailer Motor Home Cab & Chassis Delivery Vehicle SUV

vehicleSubType

Semi-Trailers Travel Trailers Utility House Homemade Camping Boat Heavy Duty Medium Duty Cab and Chassis Farm Use School Tourism Nonprofit Transit Recreational OHV/ATV Snowmobile Motorbike Personal Watercraft UTV

bodyStyle

CAB & CHASSIS COUPE CONVERTIBLE HATCHBACK MOTORCYCLE MOTORHOME SEDAN STATIONWAGON SPORT UTILITY VEHICLE TRAILER TRUCK UTILITY VAN WAGON

fuelType

Gas Electric Diesel Hybrid

color

BLACK BROWN BLUE GREY SILVER RED GREEN PURPLE PINK ORANGE MAROON GOLD TAN WHITE YELLOW BRONZE

Transaction & Registration Fields

transactionType

Purchase Lease

plateType

Regular Commercial

titleStatus

MCO Title

leaseTaxesType

Paid In-Lease Paid Upfront

vehiclePossessionType

Dealership Residence

Driver & Contact Fields

driverCategory

Individual Business

mailingInstruction

Dealer Driver

plateShipmentTo

Dealer Customer

Trade-In Fields

tradeInVehicleType

Passenger Vehicle Pick-up Truck Motorcycle Travel Trailer Motor Home Cab & Chassis Delivery Vehicle SUV Truck Bus

tradeInSubVehicleType

Semi-Trailers Travel Trailers Utility House Homemade Camping Boat Heavy Duty Medium Duty Cab and Chassis Farm Use

State Values

All state fields accept the following US states:

Alabama Alaska Arizona Arkansas California Colorado Connecticut Delaware Florida Georgia Hawaii Idaho Illinois Indiana Iowa Kansas Kentucky Louisiana Maine Maryland Massachusetts Michigan Minnesota Mississippi Missouri Montana Nebraska Nevada New Hampshire New Jersey New Mexico New York North Carolina North Dakota Ohio Oklahoma Oregon Pennsylvania Rhode Island South Carolina South Dakota Tennessee Texas Utah Vermont Virginia Washington West Virginia Wisconsin Wyoming

Applies to fields: state, titleState, tradeinState, lienHolderState, and all address state fields

🔍 Quick Endpoint Search

Authentication

The ATC Portal API uses token-based authentication. Include your API token in the request header for all API calls.

Request Header

apiToken: YOUR_API_TOKEN_HERE

Example Request

curl -X POST https://api.autotitling.com/api/APIStack/v3/RegisterVehicle \ -H "Content-Type: application/json" \ -H "apiToken: YOUR_API_TOKEN_HERE" \ -d '{ "customerInfo": { "businessName": "Example Dealer", "customerID": 12345 }, "vehicleInfo": { "vin": "1HGCM82633A123456", "state": "California", ... } }'

Security Best Practices

  • Keep your API token secure and never expose it in client-side code
  • Use HTTPS for all API requests
  • Rotate your API tokens regularly
  • Implement proper error handling for authentication failures
  • Monitor API usage for unusual patterns

Code Examples

JavaScript/Node.js

const axios = require('axios'); const registerVehicle = async () => { try { const response = await axios.post( 'https://api.autotitling.com/api/APIStack/v3/RegisterVehicle', { customerInfo: { businessName: "Example Dealer", customerID: 12345, dealerId: null }, vehicleInfo: { vin: "1HGCM82633A123456", state: "California", county: "Los Angeles", city: "Los Angeles", zipcode: 90001, transactionType: "Purchase", vehicleType: "Passenger Car", modelYear: 2023, model: "Accord", make: "Honda" // ... additional fields }, driverInfo: { driverCategory: "Individual", drivers: [{ firstName: "John", lastName: "Doe", address1: "123 Main St", city: "Los Angeles", state: "California", zipCode: "90001", isPrimary: true }] } }, { headers: { 'Content-Type': 'application/json', 'apiToken': 'YOUR_API_TOKEN_HERE' } } ); console.log('Registration successful:', response.data); } catch (error) { console.error('Registration failed:', error.response.data); } }; registerVehicle();

Python

import requests import json def register_vehicle(): url = "https://api.autotitling.com/api/APIStack/v3/RegisterVehicle" headers = { "Content-Type": "application/json", "apiToken": "YOUR_API_TOKEN_HERE" } payload = { "customerInfo": { "businessName": "Example Dealer", "customerID": 12345, "dealerId": None }, "vehicleInfo": { "vin": "1HGCM82633A123456", "state": "California", "county": "Los Angeles", "city": "Los Angeles", "zipcode": 90001, "transactionType": "Purchase", "vehicleType": "Passenger Car", "modelYear": 2023, "model": "Accord", "make": "Honda" # ... additional fields }, "driverInfo": { "driverCategory": "Individual", "drivers": [{ "firstName": "John", "lastName": "Doe", "address1": "123 Main St", "city": "Los Angeles", "state": "California", "zipCode": "90001", "isPrimary": True }] } } try: response = requests.post(url, headers=headers, json=payload) response.raise_for_status() print("Registration successful:", response.json()) except requests.exceptions.RequestException as e: print("Registration failed:", e) register_vehicle()

C#/.NET

using System; using System.Net.Http; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json; public class ATCPortalClient { private readonly HttpClient _httpClient; private const string BaseUrl = "https://api.autotitling.com/api/APIStack/v3"; public ATCPortalClient(string apiToken) { _httpClient = new HttpClient(); _httpClient.DefaultRequestHeaders.Add("apiToken", apiToken); } public async Task RegisterVehicleAsync() { var payload = new { customerInfo = new { businessName = "Example Dealer", customerID = 12345, dealerId = (int?)null }, vehicleInfo = new { vin = "1HGCM82633A123456", state = "California", county = "Los Angeles", city = "Los Angeles", zipcode = 90001, transactionType = "Purchase", vehicleType = "Passenger Car", modelYear = 2023, model = "Accord", make = "Honda" // ... additional fields }, driverInfo = new { driverCategory = "Individual", drivers = new[] { new { firstName = "John", lastName = "Doe", address1 = "123 Main St", city = "Los Angeles", state = "California", zipCode = "90001", isPrimary = true } } } }; var json = JsonConvert.SerializeObject(payload); var content = new StringContent(json, Encoding.UTF8, "application/json"); var response = await _httpClient.PostAsync($"{BaseUrl}/RegisterVehicle", content); return await response.Content.ReadAsStringAsync(); } }