Endpoint: consulta full (todo en uno)
El endpoint estrella: con la placa y la cédula del propietario devuelve, en una sola llamada, el bundle vehicular completo (datos del RUNT, SOAT, tecnomecánica, antecedentes, multas SIMIT, impuesto, avalúo FASECOLDA y pico y placa) MÁS la licencia de conducción del propietario. Si envías ciudad, o lat y lng (geolocaliza la ciudad y manda sobre ciudad), el pico y placa llega filtrado a esa ciudad con el detalle en picoYPlaca.ubicacion; sin ubicación trae todas las ciudades monitoreadas. El tipo de vehículo para el pico y placa se detecta solo desde la clase y el servicio del RUNT (un vehículo de servicio público —placa blanca— no recibe la rotación de los particulares); qué dígito de la placa se evalúa lo fija cada ciudad y viene en digitoPlaca (por defecto primero para moto y último para carro). Cuesta 3 créditos y solo se cobra cuando hay datos del vehículo; la licencia es best-effort (con documento NIT se devuelve como null).
Todo el conjunto de fuentes en UNA sola llamada: bundle vehicular completo (RUNT, SOAT, tecnomecánica, antecedentes, multas SIMIT, impuesto, avalúo FASECOLDA —con fichaTecnica de 38 campos y origen— y pico y placa) MÁS la licencia de conducción del propietario (por la misma cédula). Con ciudad o lat/lng (geolocaliza la ciudad; manda sobre ciudad) el pico y placa se filtra a esa ciudad y agrega picoYPlaca.ubicacion; sin ubicación trae todas las ciudades monitoreadas. El tipo de vehículo se detecta solo desde la clase RUNT; el dígito de placa evaluado lo fija cada ciudad y viene en digitoPlaca (por defecto primero para moto, último para carro). El bloque vehicle trae además la ficha técnica del registro —capacidad de carga y peso bruto en kg, ejes, llantas, pasajeros, puertas, número de serie y de licencia de tránsito, y las señales regrabados, repotenciado, importado, vehiculoEnsenanza, antiguoClasico y seguridadEstado—, más tarjetaOperacion y polizasRc (con sus amparos) cuando el vehículo es de servicio público. Desde 0.71.0 llega también el HISTÓRICO completo, no solo lo vigente: vehicle.tramites (matrícula inicial, traspasos, cambios de color o de servicio, con fecha, organismo y estado), soat.historico y rtm.historico con todas las vigencias registradas, vehicle.normalizacion cuando el registro marca deficiencia de matrícula, el número de oficio de cada limitación en antecedentes.embargos[].documento, y en SIMIT el departamento y el estadoCartera de cada comparendo, a quién está asociado cada uno (asociadaDocumento: la persona consultada es la infractora; asociadaPlaca: es de la placa consultada) y el detalle de los acuerdos de pago. Cada campo llega null (o lista vacía) si el registro no lo reporta para ese vehículo: la ficha se llena por tipo, un vehículo de carga trae capacidad y ejes donde un automóvil trae pasajeros y puertas. Cuesta 3 créditos: la mitad de lo que valen sueltas las fuentes que reúne.
Cuerpo de la solicitud
{
"placa": "ABC123",
"docType": "CC",
"docNumber": "1020304050",
"primerApellido": "PÉREZ",
"ciudad": "Bogotá"
}| Campo | Tipo | Qué es |
|---|---|---|
| placaobligatorio | string | Placa del vehículo. 5 a 7 caracteres alfanuméricos: cubre AAA000, AAA00A y los formatos menos comunes (AAA00, AAAA00). Los guiones y espacios se ignoran. Si la mandas dentro del alias interno de tu flota (`ABC12D_JPG`, `ABC12D-JUAN-PEREZ`, `ABC12D-MOVIL-11`) se extrae la placa, siempre que en el texto haya UNA sola: con dos o con ninguna la respuesta es 400. |
| docTypeobligatorio | string | Tipo de documento del propietario (CC, CE, NIT, PA, TI, CD, PPT, RC; PAS se normaliza a PA y P.P.T./P.P. a PPT). Con NIT no se consulta licencia: `licencia` viene null.Valores: CC · CE · NIT · PA · TI · CD · PPT · RC |
| docNumberobligatorio | string | Número de documento del propietario. Alias aceptado: `doc`. |
| primerApellido | string | Primer apellido del propietario. Solo afecta al bloque `licencia`: la fuente oficial lo exige desde el 6-ago-2026 y sin él ese bloque llega con `code: "apellido_requerido"`. El bundle vehicular no lo necesita y se entrega igual. Alias aceptados: `apellido`, `firstLastName`, `primer_apellido`. |
| ciudad | string | Filtra el pico y placa a esta ciudad (ej. Bogotá). |
| lat | number | Latitud; requiere lng. Geolocaliza la ciudad del pico y placa y manda sobre `ciudad`. |
| lng | number | Longitud; requiere lat. |
| refresh | boolean | Ignora la caché y vuelve a consultar la fuente oficial. Ojo: una consulta refrescada con datos siempre cobra (el hit de caché no). |
Ejemplos por lenguaje
curl -X POST 'https://placapi.com/api/consulta-full' \
-H 'x-api-key: pk_live_TU_CLAVE' \
-H 'content-type: application/json' \
-d '{"placa":"ABC123","docType":"CC","docNumber":"1020304050","primerApellido":"PÉREZ","ciudad":"Bogotá"}'const res = await fetch("https://placapi.com/api/consulta-full", {
method: "POST",
headers: {
"x-api-key": "pk_live_TU_CLAVE",
"content-type": "application/json",
},
body: JSON.stringify({"placa":"ABC123","docType":"CC","docNumber":"1020304050","primerApellido":"PÉREZ","ciudad":"Bogotá"}),
});
const data = await res.json();import requests
res = requests.post(
"https://placapi.com/api/consulta-full",
headers={"x-api-key": "pk_live_TU_CLAVE"},
json={"placa":"ABC123","docType":"CC","docNumber":"1020304050","primerApellido":"PÉREZ","ciudad":"Bogotá"},
)
data = res.json()Respuesta exitosa
{
"input": {
"placa": "ABC123",
"docType": "CC",
"docNumber": "1020304050"
},
"mode": "live",
"generatedAt": "2026-07-24T15:04:05.000Z",
"vehicle": {
"source": "vehiculo",
"status": "ok",
"fetchedAt": "2026-07-24T15:04:05.000Z",
"mode": "live",
"data": {
"placa": "ABC123",
"marca": "MAZDA",
"linea": "CX-30",
"modelo": 2023,
"cilindraje": 2000,
"combustible": "GASOLINA",
"servicio": "Particular",
"carroceria": "CAMIONETA",
"color": "ROJO",
"motor": "MTR0000001",
"chasis": "9GAJC6915FB040270",
"vin": "9GAJC6915FB040270",
"fechaMatricula": "15/03/2023",
"organismoTransito": "SECRETARIA DISTRITAL DE MOVILIDAD DE BOGOTA",
"estado": "activo",
"clase": "CAMIONETA",
"capacidadCarga": null,
"pesoBruto": 1830,
"ejes": 2,
"llantas": null,
"pasajerosSentados": 5,
"pasajerosTotal": null,
"puertas": 5,
"clasificacion": "CAMIONETA",
"numeroSerie": "9GAJC6915FB040270",
"licenciaTransito": "10035451456",
"regrabados": [],
"repotenciado": false,
"importado": false,
"vehiculoEnsenanza": false,
"antiguoClasico": false,
"seguridadEstado": false,
"tarjetaOperacion": null,
"polizasRc": [],
"tramites": [
{
"id": "267205667",
"fecha": "2023-03-15",
"estado": "AUTORIZADA",
"tramite": "TRÁMITE MATRÍCULA INICIAL",
"entidad": "SECRETARIA DISTRITAL DE MOVILIDAD DE BOGOTA",
"registro": "RNA"
}
],
"normalizacion": null
}
},
"soat": {
"source": "soat",
"status": "ok",
"fetchedAt": "2026-07-24T15:04:05.000Z",
"mode": "live",
"data": {
"vigente": true,
"aseguradora": "SBS SEGUROS",
"poliza": "1508006948335000",
"fechaExpedicion": "20/09/2025",
"fechaVencimiento": "19/09/2026",
"diasParaVencer": 69,
"historico": [
{
"poliza": "1508006948335000",
"aseguradora": "SBS SEGUROS",
"fechaExpedicion": "2025-09-20",
"fechaInicioVigencia": "2025-09-20",
"fechaVencimiento": "2026-09-19",
"estado": "VIGENTE",
"estadoSoat": "EMITIDA",
"tipoTarifa": "120",
"origen": "NACIONAL"
}
]
}
},
"rtm": {
"source": "rtm",
"status": "ok",
"fetchedAt": "2026-07-24T15:04:05.000Z",
"mode": "live",
"data": {
"vigente": true,
"exento": false,
"fechaPrimeraRevision": null,
"cda": "CDA FONTIBON S.A.S",
"fechaExpedicion": "22/09/2025",
"fechaVencimiento": "22/09/2026",
"diasParaVencer": 72,
"certificadoNumero": "189733821",
"historico": [
{
"certificadoNumero": "189733821",
"cda": "CDA FONTIBON S.A.S",
"fechaExpedicion": "2025-09-22",
"fechaVencimiento": "2026-09-22",
"estado": "APROBADA",
"tipoRevision": "REVISION TECNICO-MECANICO",
"vigente": true,
"informacionConsistente": true
}
]
}
},
"antecedentes": {
"source": "antecedentes",
"status": "ok",
"fetchedAt": "2026-07-24T15:04:05.000Z",
"mode": "live",
"data": {
"prendas": [
{
"acreedor": "RCI COLOMBIA S.A. COMPAÑIA DE FINANCIAMIENTO",
"docAcreedor": "900977629",
"tipoDocAcreedor": "NIT",
"fechaInscripcion": "2021-09-30",
"confecamaras": true
}
],
"embargos": [],
"historicoPropietarios": 1
}
},
"simit": {
"source": "multas",
"status": "ok",
"fetchedAt": "2026-07-24T15:04:05.000Z",
"mode": "live",
"data": {
"totalDeuda": 0,
"totalMultas": 0,
"multas": [],
"acuerdosPago": 0,
"acuerdos": [],
"pazSalvo": true,
"suspendida": false,
"cancelada": false,
"cursos": 0
}
},
"impuestos": {
"source": "Bogotá D.C.",
"status": "warn",
"fetchedAt": "2026-07-24T15:04:05.000Z",
"mode": "live",
"data": {
"departamento": "Bogotá D.C.",
"anios": [
{
"anio": 2024,
"valor": 412000,
"pagado": true
},
{
"anio": 2025,
"valor": 438000,
"pagado": true
},
{
"anio": 2026,
"valor": 465000,
"pagado": false
}
],
"totalPendiente": 465000
},
"portalUrl": "https://www.haciendabogota.gov.co/es/sdh/pagos-impuesto-vehiculos"
},
"fasecolda": {
"source": "avaluo",
"status": "info",
"fetchedAt": "2026-07-24T15:04:05.000Z",
"mode": "live",
"data": {
"codigo": "05636023",
"marca": "MAZDA",
"linea": "CX30 GRAND TOURING LX TP 2500CC 7AB R18 TC CT AWD",
"modelo": 2023,
"valorComercial": 109100000,
"rangoMercado": {
"min": 109100000,
"max": 109100000
},
"clase": "CAMIONETA PASAJ.",
"codigoHomologado": "05606096",
"codigoFoto": [
{
"id": 49202000,
"nombre": "1618155-259.jpg"
}
],
"fichaTecnica": {
"cilindraje": 2488,
"potencia": 186,
"combustible": "GASOLINA",
"sistemaAlimentacion": null,
"transmision": "4X4",
"tipoCaja": "TIPTRONICA",
"traccion": "DOBLE",
"peso": 1520,
"largo": 4395,
"ejes": 2,
"puertas": 5,
"capacidadPasajeros": 5,
"capacidadCarga": null,
"airbags": 7,
"abs": true,
"frenos": "DISCO/DISCO",
"tipoDireccion": "ELÉCTRICA",
"tipoFaros": "LED",
"suspensionTrasera": null,
"aireAcondicionado": true,
"tipoAireAcondicionado": "AUTOMATICO",
"sunroof": true,
"camaraReversa": true,
"sensoresParqueo": true,
"exploradoras": true,
"tapiceriaCuero": true,
"tacometro": null,
"vidriosElectricos": 4,
"espejosElectricos": 2,
"sillasElectricas": 1,
"clase": "CAMIONETA PASAJ.",
"categoria": "LIVIANO PASAJEROS",
"tipologia": "UTILITARIO DEPORTIVO 4X4",
"servicio": "PARTICULAR",
"nacionalidad": "MEX",
"importado": true,
"segmentoTamano": "C",
"segmentoCilindraje": "Y"
},
"origen": "vin"
}
},
"picoYPlaca": {
"source": "pico-y-placa",
"status": "ok",
"fetchedAt": "2026-07-24T15:04:05.000Z",
"mode": "live",
"ubicacion": {
"matched": true,
"source": "ciudad",
"consulta": {
"ciudad": "Bogotá"
},
"ciudad": "Bogotá",
"departamento": "Bogotá D.C."
},
"data": [
{
"ciudad": "Bogotá",
"departamento": "Bogotá D.C.",
"tipoVehiculo": "carro",
"digitoPlaca": "ultimo",
"tienePicoYPlaca": true,
"esquema": "parImpar",
"hoyAplica": false,
"manianaAplica": true,
"digitosHoy": [
1,
2,
3,
4,
5
],
"digitosManiana": [
6,
7,
8,
9,
0
],
"diasSemana": [],
"horarios": "L–V, 6:00–21:00",
"nota": null,
"vigencia": "Vigente en julio de 2026",
"fuente": "https://www.movilidadbogota.gov.co/pico-y-placa"
}
]
},
"licencia": {
"data": {
"documentType": "CC",
"documentNumber": "1020304050",
"fullName": "J**N P***Z",
"driverStatus": "ACTIVO",
"citizenStatus": "ACTIVA",
"totalLicenses": "1",
"licenses": [
{
"category": "B1",
"status": "ACTIVA",
"licenceNumber": "1020304050",
"otExpide": "INSTITUTO DE MOVILIDAD",
"expeditionDate": "23/04/2025",
"dueDate": "23/04/2035",
"restrictions": null
}
],
"infractions": {
"tieneMultas": "NO",
"nroPazYSalvo": "885466652067"
}
},
"mode": "live",
"fetchedAt": "2026-07-24T15:04:05.000Z"
},
"cost": 3
}Errores y cobro
Cuesta 3 créditos cuando devuelve datos. Códigos posibles: 400 401 402 404 429 500 502 — qué significa cada uno, cuál reintentar y cuál cobra, en errores y rate limits. Autenticación por x-api-key: cómo generar la clave.
Cuándo conviene el bundle en vez de llamar cada endpoint por separado, y quién lo usa para revisar un usado o una flota entera: API de consulta full.
Última revisión: 23 de julio de 2026 · PlacApi opera desde Colombia. PlacApi no es una entidad oficial del Gobierno.