Encar – Official TypeScript Client Parser for Carapis Encar API
Encar is the official TypeScript client parser for the Carapis Encar API, providing seamless programmatic access to real-time Korean used car data from Encar.com. With the encar
library parser, you can easily query, filter, and analyze vehicle listings, manufacturers, models, and more using TypeScript or JavaScript – all powered by the robust Encar API provided by Carapis.com.
This client parser includes type definitions for better developer experience and safety.
Explore a live catalog powered by this Carapis Encar API: Carapis Catalog
Features
- Easy access and parsing of real-time Encar.com vehicle data via the Carapis Encar API client parser.
- Type-safe interaction with the Encar API using the parser
- List, filter, and retrieve detailed car listings using the Carapis Encar API parser features.
- Fetch manufacturer, model, and vehicle details programmatically (using slugs for catalog items)
- Supports advanced search queries for the Encar API using
axios
- Free tier available for testing the Encar API (up to 1,000 vehicles)
Configuration
-
API Key (Optional): For full access to the Carapis Encar API, an API key is recommended. Get yours at Carapis.com Pricing.
If an API key is not provided, the client parser will operate in Free Tier mode, limited to accessing the latest 1,000 vehicles. Retrieve your API key from a secure location, such as environment variables, if you use one.
How to use Encar API (TypeScript Client Parser)
Initialize the client parser and make Encar API calls using async/await
.
import { CarapisClient, CarapisClientError } from 'encar';// --- Option 1: Initialize with API Key (Recommended for full access) ---const API_KEY = process.env.CARAPIS_API_KEY; // Or get from a secure sourceconst clientWithKey = new CarapisClient(API_KEY);// --- Option 2: Initialize without API Key (Free Tier - Limited Access) ---const clientFreeTier = new CarapisClient(); // No API key provided// --- Proceed with Encar API calls using either client parser ---// Example API call using the free tier client (needs to be in an async context):// async function runFreeTier() {// const vehicles = await clientFreeTier.listVehicles({ limit: 3 });// // Process vehicles.results (limited to latest 1000)// }// runFreeTier();
Encar API TypeScript Usage Examples (Parser)
Below are examples for querying the Encar API using this TypeScript client parser.
(Note: All client parser methods are async
and return Promises. Use await
inside an async
function or .then()
chaining.)
List Vehicles via Encar API Parser
Retrieve a list of vehicles with filtering. Uses slugs for manufacturer/model group/model.
// Assuming 'client' is an initialized CarapisClient instanceconst vehiclesResponse = await client.listVehicles({limit: 5,min_year: 2021,fuel_type: 'gasoline',manufacturer_slug: 'hyundai', // Filter by manufacturer slugmodel_group_slug: 'sonata', // Filter by model group slugmax_mileage: 50000,ordering: '-created_at'});// Process vehiclesResponse.results (array of vehicles)// vehiclesResponse also contains count, page, pages, limit
Get Vehicle Details via Encar API Parser
Retrieve details for a specific vehicle by its vehicle_id
.
// Assuming 'client' is an initialized CarapisClient instanceconst vehicleId = 38481829; // Replace with a valid IDconst vehicleDetails = await client.getVehicles({ vehicle_id: vehicleId });// Process vehicleDetails (object with vehicle data)
List Manufacturers via Encar API Parser
Retrieve a list of vehicle manufacturers.
// Assuming 'client' is an initialized CarapisClient instanceconst manufacturersResponse = await client.listCatalogManufacturers({ country: 'KR', limit: 10 });// Process manufacturersResponse.results (array of manufacturers)// manufacturersResponse also contains count, page, pages, limit
Get Manufacturer Details via Encar API Parser
Retrieve details for a specific manufacturer by its slug
.
// Assuming 'client' is an initialized CarapisClient instanceconst manufacturerSlug = 'hyundai'; // Example slugconst manufacturerInfo = await client.getCatalogManufacturers({ slug: manufacturerSlug });// Process manufacturerInfo (object with manufacturer data)
Get Manufacturer Stats via Encar API Parser
Retrieve overall statistics about manufacturers.
// Assuming 'client' is an initialized CarapisClient instanceconst mfrStats = await client.getCatalogManufacturersStats({});// Process mfrStats (object with statistics)
List Model Groups via Encar API Parser
Retrieve a list of model groups, filtered by manufacturer's slug
.
// Assuming 'client' is an initialized CarapisClient instanceconst manufacturerSlugForGroups = 'hyundai'; // Example slugconst modelGroupsResponse = await client.listCatalogModelGroups({ manufacturer__slug: manufacturerSlugForGroups, search: 'Sonata', limit: 5 });// Process modelGroupsResponse.results (array of model groups)// modelGroupsResponse also contains count, page, pages, limit
Get Model Group Details via Encar API Parser
Retrieve details for a specific model group by its slug
.
// Assuming 'client' is an initialized CarapisClient instanceconst modelGroupSlug = 'sonata'; // Example slugconst modelGroupInfo = await client.getCatalogModelGroups({ slug: modelGroupSlug });// Process modelGroupInfo (object with model group data)
List Models via Encar API Parser
Retrieve a list of specific vehicle models, filtered by model group's slug
.
// Assuming 'client' is an initialized CarapisClient instanceconst modelGroupSlugForModels = 'sonata'; // Example slugconst modelsResponse = await client.listCatalogModels({ model_group__slug: modelGroupSlugForModels, search: 'DN8', limit: 5 });// Process modelsResponse.results (array of models)// modelsResponse also contains count, page, pages, limit
Get Model Details via Encar API Parser
Retrieve details for a specific vehicle model by its slug
.
// Assuming 'client' is an initialized CarapisClient instanceconst modelSlug = 'sonata-dn8'; // Example slugconst modelInfo = await client.getCatalogModels({ slug: modelSlug });// Process modelInfo (object with model data)
List Dealers via Encar API Parser
Retrieve a list of dealers.
// Assuming 'client' is an initialized CarapisClient instanceconst dealersResponse = await client.listBusinessDealers({ limit: 5, ordering: 'name' });// Process dealersResponse.results (array of dealers)// dealersResponse also contains count, page, pages, limit
Get Dealer Details via Encar API
Retrieve details for a specific dealer by their user_id
.
// Assuming 'client' is an initialized CarapisClient instanceconst dealerUserId = 'A0123j'; // Replace with a valid dealer IDconst dealerInfo = await client.getBusinessDealers({ user_id: dealerUserId });// Process dealerInfo (object with dealer data)
List Diagnosis Centers via Encar API
Retrieve a list of diagnosis centers.
// Assuming 'client' is an initialized CarapisClient instanceconst centersResponse = await client.listBusinessDiagnosisCenters({ limit: 5 });// Process centersResponse.results (array of centers)// centersResponse also contains count, page, pages, limit
Get Diagnosis Center Details via Encar API
Retrieve details for a specific diagnosis center by its code
.
// Assuming 'client' is an initialized CarapisClient instanceconst centerCode = 'dA17201'; // Replace with a valid center codeconst centerInfo = await client.getBusinessDiagnosisCenters({ code: centerCode });// Process centerInfo (object with center data)
Get Vehicle Enums via Encar API
Retrieve available enumeration values (like body types, colors, etc.).
// Assuming 'client' is an initialized CarapisClient instanceconst vehicleEnums = await client.getVehiclesEnums({});// Process vehicleEnums (object containing arrays of enum values, e.g., vehicleEnums.fuel_types)
Get Vehicle Stats via Encar API
Retrieve overall statistics about the vehicle listings.
// Assuming 'client' is an initialized CarapisClient instanceconst vehicleStats = await client.getVehiclesStats({});// Process vehicleStats (object with statistics)
Direct Carapis Encar API Access & Documentation
Interact with the Carapis Encar API directly using curl
or other HTTP clients. This API acts as a powerful data source, parsed effectively by the TypeScript client parser.
Full Carapis Encar API Documentation: https://carapis.com/docs
Example curl
Requests for Carapis Encar API:
-
With API Key (Full Carapis Encar API Access):
# Query Carapis Encar API for vehiclescurl -X 'GET' \'https://carapis.com/apix/encar/v2/vehicles/?limit=5&min_year=2021&manufacturer_slug=hyundai' \-H 'accept: application/json' \-H 'Authorization: ApiKey YOUR_API_KEY_UUID' -
Without API Key (Free Tier Carapis Encar API Access - 1,000 Record Limit):
# Limited query to Carapis Encar APIcurl -X 'GET' \'https://carapis.com/apix/encar/v2/vehicles/?limit=5' \-H 'accept: application/json'
See Carapis Pricing Plans for Carapis Encar API access tiers.
See Also
- Carapis.com - The provider of this Carapis Encar API.
- Encar.com - The primary source of the vehicle data.
Support & Contact
- Website: https://carapis.com
- Telegram: t.me/markinmatrix
License
This project is licensed under the MIT License - see the LICENSE file for details.