API de contratación pública — España, Francia, Reino Unido, Irlanda, Polonia y Noruega

Cada órgano de contratación publica sus adjudicaciones por separado: en España en la Plataforma de Contratación del Sector Público (PLACSP), licitaciones y contratos menores por igual; en Francia en los datos esenciales de la contratación pública (DECP) consolidados; en el Reino Unido en Contracts Finder y Find a Tender; e Irlanda, Polonia y Noruega en el TED, solo por encima de los umbrales europeos. Prometiam expone esas adjudicaciones en un solo endpoint REST consultable por comprador, proveedor, identificador (NIF, SIRET, número de Companies House, CRO, NIP u organisasjonsnummer), código CPV o fecha, actualizado a diario desde las plataformas oficiales.

El endpoint

GET /procurement/awards admite country (ES, FR, GB, IE, PL o NO; sin él, los seis), company_id, nif (el identificador del adjudicatario tal y como se publica), supplier, buyer, cpv, date_from, date_to, min_amount, limit y cursor; hay que enviar al menos uno de company_id, nif, supplier, buyer, cpv o date_from. Cada fila es una adjudicación a un adjudicatario y trae country, company_id, supplier_name, supplier_tax_id, buyer, buyer_id, subject, amount_eur, amount_contract_eur, amount_is_ceiling, amount_suspect, award_date, nature, is_framework, n_suppliers, contract_type, procedure, cpv, bids_received, sme, duration_months, file_reference y source_url, de más reciente a más antigua. GET /companies/{id}?include=procurement adjunta las diez adjudicaciones más recientes de una empresa española ya identificada en el registro.

Límites de alcance

Seis países: España y Francia desde sus plataformas nacionales, el Reino Unido desde Contracts Finder y Find a Tender, e Irlanda, Polonia y Noruega desde el TED, solo por encima de los umbrales europeos. Los importes publicados en libras, eslotis o coronas se convierten al tipo medio anual del BCE del año de la adjudicación; currency conserva la moneda publicada, y el Reino Unido publica importe solo en parte de sus adjudicaciones. amount_eur es la parte del adjudicatario tal y como se publica, sin IVA donde la fuente lo distingue; amount_contract_eur es el contrato entero, contado una sola vez aunque lo compartan varios adjudicatarios. Un acuerdo marco o un sistema dinámico de adquisición publica un tope, no gasto ejecutado, y la fila lo indica con amount_is_ceiling; una cifra publicada que es un valor por defecto del formulario y no un precio lleva amount_suspect. Los contratos menores se adjudican directamente por ley, así que una cuota alta de oferta única no es por sí sola una señal de riesgo; Francia solo publica el número de ofertas en parte de sus adjudicaciones, y bids_received queda vacío donde no se publicó. company_id solo aparece cuando el identificador del adjudicatario coincide con una empresa del registro de ese país — hoy España, Francia y Reino Unido; las filas de Irlanda, Polonia y Noruega llevan el identificador publicado sin ese enlace —; si no coincide, la adjudicación se devuelve igual. Las adjudicaciones a personas físicas nunca se devuelven. El endpoint no calcula concentración ni ninguna otra métrica: devuelve filas, y el cliente decide qué agregar. No hay scoring, ni cuentas anuales, ni una "puntuación de riesgo" de ningún tipo.

Casos de uso

Diligencia debida de un proveedor antes de contratarlo o financiarlo; medir la concentración de un proveedor en un único comprador sumando sus propias filas; dar de alta a un organismo público como cliente y ver a quién adjudica; y enlazar una adjudicación con la ficha registral de la empresa vía company_id y GET /companies/{id} para ver su estado y sus administradores y, si procede, sus concursos de acreedores en GET /search (España) o sus procedimientos colectivos en GET /insolvency/search?country=FR (Francia).

Leer más · Conseguir una clave API gratis

Frequently asked questions

¿Qué cubre este endpoint?
Las adjudicaciones de contratos públicos tal y como las publica cada órgano de contratación: en España la Plataforma de Contratación del Sector Público (PLACSP), licitaciones y contratos menores por igual; en Francia los datos esenciales de la contratación pública (DECP) consolidados; en el Reino Unido Contracts Finder y Find a Tender; en Irlanda, Polonia y Noruega el TED, solo por encima de los umbrales europeos. GET /procurement/awards las devuelve consultables por comprador, proveedor, identificador, código CPV o fecha; country=ES, FR, GB, IE, PL o NO limita a un país.
¿El importe incluye IVA?
No. amount_eur es la parte del adjudicatario tal y como se publica, sin IVA donde la fuente lo distingue, y amount_contract_eur es el contrato entero contado una sola vez. Un acuerdo marco o un sistema dinámico de adquisición publica un tope, no gasto ejecutado, y la fila lo indica con amount_is_ceiling — no lo trate como una cifra de facturación real.
¿Una sola oferta en un contrato es una señal de riesgo?
No por sí sola. Los contratos menores se adjudican directamente por ley en España, así que una cuota alta de oferta única en ese tipo de contrato es lo esperable, no una anomalía. Francia solo publica el número de ofertas en parte de sus adjudicaciones: bids_received vacío no significa una sola oferta. El endpoint no marca nada como sospechoso: devuelve filas, sin scoring.
¿Puedo enlazar una adjudicación con la ficha registral de la empresa?
Sí, cuando el identificador del adjudicatario coincide con una empresa del registro de ese país (hoy España, Francia y Reino Unido; las filas de Irlanda, Polonia y Noruega llevan el identificador sin enlace): la fila trae company_id, y GET /companies/{id} da el estado y los administradores; para empresas españolas, GET /companies/{id}?include=procurement adjunta las diez adjudicaciones más recientes. Si no hay coincidencia, la adjudicación se devuelve igualmente, sin ese enlace.
¿Esto sustituye un análisis de riesgo de crédito?
No. El endpoint devuelve adjudicaciones publicadas, sin cuentas anuales, sin scoring y sin ninguna puntuación de riesgo. Sirve como una señal más dentro de un proceso de diligencia debida, no como un veredicto.