radicadouno_novedades_procesos
Lo que ha cambiado en los procesos de SECOP II y SECOP I desde un cursor, en orden. SECOP II: nuevo (entra en la lista de abiertos: motivo primera_vez o pasa_a_abierto), cierre_cambiado (prórroga o adelanto, antes → después), estado_cambiado (estado o fase), presupuesto_cambiado y ya_no_abierto (motivo cierre_vencido, estado_cerrado o desaparece_de_la_fuente); salen de comparar la foto de cada día con la anterior: se fechan el día en que se ven (detectado_en), no cuando los hizo la entidad, y una adenda que no cambie cierre, estado, fase ni presupuesto no se ve (la fuente no publica las adendas). SECOP I: cierre_cambiado (con la hora, antes → después) y estado_cambiado al releer la ficha, documento_nuevo y documento_version_nueva (del inventario de documentos: adendas, pliegos…) y modificacion_publicada (lo que registra la plataforma, con su fecha); novedad_origen dice de dónde sale y la primera lectura de una constancia no genera novedades (una constancia nueva sale en radicadouno_procesos_abiertos). El cursor es UNO para las dos fuentes: empieza con desde=0 (o con ultimo_cursor para ver solo lo que llegue a partir de ahora), guarda siguiente_cursor y vuelve a pedir con él, con la fuente que quieras; si hay_mas es true, pide otra vez enseguida. Los cursores guardados antes de SECOP I siguen valiendo. Cada fila lleva el proceso tal como está ahora y abierto_ahora (no recomiendes uno con abierto_ahora false o null). cierre es la FECHA de cierre de ofertas (AAAA-MM-DD, día de Bogotá). SECOP II no publica la hora de cierre en datos abiertos (cierre_hora null): un proceso de SECOP II que cierra hoy puede cerrar a primera hora, confírmalo en url (la ficha oficial). SECOP I sí la publica: cierre_hora en ISO 8601 con −05:00 (America/Bogota; la ficha no escribe la zona) y cierre_utc, y un proceso de SECOP I cuyo cierre ya pasó no sale como abierto. Frecuencia: SECOP II, una foto al día (10:30 UTC, y otra a las 19:30 UTC si la fuente se ha republicado); datos.gov.co publica lo de SECOP II con un día de retraso, así que un proceso publicado hoy sale como pronto mañana (cobertura.foto). SECOP I, la ficha pública de cada proceso en contratos.gov.co, releída cada día si cierra en menos de 72 h y como mucho a los 7 días si no (capturado_en de cada fila). Sin contratación directa en ninguna. fuente: ambas (por defecto en esta herramienta), secop2 o secop1 (la ruta de la API, sin fuente, da solo SECOP II por compatibilidad: esta herramienta manda ambas). Cada fila lleva su fuente y las de las dos tienen los mismos campos (campos_sin_dato dice cuáles no publica cada una). SECOP I está en carga inicial mientras cobertura.secop1.estado sea 'carga_inicial'; la cohorte inicial y las incorporaciones posteriores se separan y exigen el 100 % de primeras lecturas. Con 'incorporaciones_pendientes' también es parcial. El objeto contractual oficial lleva objeto_origen; un nombre oficial ausente no se inventa. El fin es una estimación. El alcance es 'parcial'. En SECOP I, departamento y municipio son los de ejecución, y entidad y entidad_id no encuentran nada (la ficha no publica el NIT). unspsc_documentales contiene códigos oficiales del objeto leídos en pliegos definitivos revisados, con URL, SHA256, páginas, fecha y alcance. No identifica un principal ni sustituye unspsc/unspsc_principal. En detalle también va a nivel de portafolio con SU id_proceso. [] significa sin evidencia revisada, no ausencia de códigos. El filtro unspsc sigue consultando el código estructurado, no esta lista documental.UNSPSC: desde ~15-09-2026 SECOP II publica casi todos los procesos como 'UNSPECIFIED' (unspsc null; cobertura.foto.pct_sin_unspsc da el porcentaje medido): el filtro unspsc solo encuentra los pocos que traen código, y la respuesta lo marca con alcance 'parcial'. SECOP I lo publica hasta la clase (6 dígitos). Para buscar por actividad, filtra mejor por modalidad, entidad, región o presupuesto.
radicadouno_procesos_abiertos
Procesos de contratación de SECOP II y SECOP I con el plazo de ofertas abierto (cierre desde hoy, hora de Bogotá; nunca vencidos, cancelados ni suspendidos), ordenados por el cierre más próximo, con entidad, modalidad, presupuesto, UNSPSC si consta, estado (y fase en SECOP II), enlace oficial (url) y provenance (fuente_url, capturado_en). Filtra por fuente, departamento, municipio, unspsc, presupuesto_min/max, entidad, modalidad y fechas de cierre. cierre es la FECHA de cierre de ofertas (AAAA-MM-DD, día de Bogotá). SECOP II no publica la hora de cierre en datos abiertos (cierre_hora null): un proceso de SECOP II que cierra hoy puede cerrar a primera hora, confírmalo en url (la ficha oficial). SECOP I sí la publica: cierre_hora en ISO 8601 con −05:00 (America/Bogota; la ficha no escribe la zona) y cierre_utc, y un proceso de SECOP I cuyo cierre ya pasó no sale como abierto. Frecuencia: SECOP II, una foto al día (10:30 UTC, y otra a las 19:30 UTC si la fuente se ha republicado); datos.gov.co publica lo de SECOP II con un día de retraso, así que un proceso publicado hoy sale como pronto mañana (cobertura.foto). SECOP I, la ficha pública de cada proceso en contratos.gov.co, releída cada día si cierra en menos de 72 h y como mucho a los 7 días si no (capturado_en de cada fila). Sin contratación directa en ninguna. fuente: ambas (por defecto en esta herramienta), secop2 o secop1 (la ruta de la API, sin fuente, da solo SECOP II por compatibilidad: esta herramienta manda ambas). Cada fila lleva su fuente y las de las dos tienen los mismos campos (campos_sin_dato dice cuáles no publica cada una). SECOP I está en carga inicial mientras cobertura.secop1.estado sea 'carga_inicial'; la cohorte inicial y las incorporaciones posteriores se separan y exigen el 100 % de primeras lecturas. Con 'incorporaciones_pendientes' también es parcial. El objeto contractual oficial lleva objeto_origen; un nombre oficial ausente no se inventa. El fin es una estimación. El alcance es 'parcial'. En SECOP I, departamento y municipio son los de ejecución, y entidad y entidad_id no encuentran nada (la ficha no publica el NIT). unspsc_documentales contiene códigos oficiales del objeto leídos en pliegos definitivos revisados, con URL, SHA256, páginas, fecha y alcance. No identifica un principal ni sustituye unspsc/unspsc_principal. En detalle también va a nivel de portafolio con SU id_proceso. [] significa sin evidencia revisada, no ausencia de códigos. El filtro unspsc sigue consultando el código estructurado, no esta lista documental.UNSPSC: desde ~15-09-2026 SECOP II publica casi todos los procesos como 'UNSPECIFIED' (unspsc null; cobertura.foto.pct_sin_unspsc da el porcentaje medido): el filtro unspsc solo encuentra los pocos que traen código, y la respuesta lo marca con alcance 'parcial'. SECOP I lo publica hasta la clase (6 dígitos). Para buscar por actividad, filtra mejor por modalidad, entidad, región o presupuesto. Para enterarte de cambios (nuevos, prórrogas, cancelaciones, adendas) usa radicadouno_novedades_procesos con un cursor; el detalle de un proceso de SECOP I (cronograma, documentos), radicadouno_secop1_proceso.