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).

POST/api/consulta-full3 créditos

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

body (JSON)
{
  "placa": "ABC123",
  "docType": "CC",
  "docNumber": "1020304050",
  "primerApellido": "PÉREZ",
  "ciudad": "Bogotá"
}
Parámetros del cuerpo de la solicitud
CampoTipoQué es
placaobligatoriostringPlaca 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.
docTypeobligatoriostringTipo 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
docNumberobligatoriostringNúmero de documento del propietario. Alias aceptado: `doc`.
primerApellidostringPrimer 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`.
ciudadstringFiltra el pico y placa a esta ciudad (ej. Bogotá).
latnumberLatitud; requiere lng. Geolocaliza la ciudad del pico y placa y manda sobre `ciudad`.
lngnumberLongitud; requiere lat.
refreshbooleanIgnora 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
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á"}'
JavaScript (fetch)
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();
Python (requests)
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

200 OK — ejemplo (placas y documentos ficticios)
{
  "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.

Contacto