{"id":6667,"date":"2026-04-02T17:01:20","date_gmt":"2026-04-02T15:01:20","guid":{"rendered":"https:\/\/rootfan.com\/oracle-to-postgresql-migration-failure\/"},"modified":"2026-04-20T22:49:08","modified_gmt":"2026-04-20T20:49:08","slug":"fallo-en-la-migracion-de-oracle-a-postgresql","status":"publish","type":"post","link":"https:\/\/rootfan.com\/es\/oracle-to-postgresql-migration-failure\/","title":{"rendered":"5 Proyectos de Migraci\u00f3n de Oracle a PostgreSQL que Fallaron (Y Por Qu\u00e9)"},"content":{"rendered":"<p><strong>En resumen<\/strong> La mayor\u00eda de las migraciones de Oracle a PostgreSQL que fallan no fallan porque PostgreSQL no estuviera listo.<br>Fracasan porque el proyecto no estaba preparado.<br>Los cinco patrones que se repiten en todas las organizaciones y sectores se deben a que los equipos hacen las mismas suposiciones: que las herramientas manejan m\u00e1s de lo que lo hacen, que el volumen de PL\/SQL es menor de lo que es y que un plan de reversi\u00f3n se puede improvisar a las 2 de la ma\u00f1ana.<\/p>\n\n\n\n<!--more-->\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>He visto proyectos de migraci\u00f3n fallar en todas las direcciones.<\/p>\n\n\n\n<p>Desbordamientos presupuestarios en los que la estimaci\u00f3n original se desvi\u00f3 por un factor de ocho.<\/p>\n\n\n\n<p>Noches de lanzamiento que terminaron con una operaci\u00f3n de recuperaci\u00f3n de tres d\u00edas.<\/p>\n\n\n\n<p>Sistemas de producci\u00f3n donde seis meses de marcas de tiempo se convirtieron silenciosamente en medianoche.<\/p>\n\n\n\n<p>Ninguno de estos fue causado por PostgreSQL.<\/p>\n\n\n\n<p>Ninguno de ellos fue causado por las herramientas de migraci\u00f3n.<\/p>\n\n\n\n<p>Cada uno fue causado por una suposici\u00f3n de planificaci\u00f3n que result\u00f3 ser err\u00f3nea.<\/p>\n\n\n\n<p>Estos son cinco de los patrones de fracaso m\u00e1s comunes \u2013 anonimizados, pero representativos de lo que sucede cuando la preparaci\u00f3n no coincide con la complejidad del trabajo.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>\u00cdndice<\/h2><nav><ul><li><a href=\"#why-do-oracle-to-postgre-sql-migrations-fail\">\u00bfPor qu\u00e9 fallan las migraciones de Oracle a PostgreSQL?<\/a><\/li><li><a href=\"#failure-1-the-team-that-skipped-the-assessment\">Fallo 1: El equipo que se salt\u00f3 la evaluaci\u00f3n<\/a><\/li><li><a href=\"#failure-2-the-pl-sql-that-nobody-counted\">Fallo 2: El PL\/SQL que nadie cont\u00f3<\/a><\/li><li><a href=\"#failure-3-the-date-columns-that-silently-lost-time\">Fallo 3: Las columnas de FECHA que perdieron tiempo silenciosamente<\/a><\/li><li><a href=\"#failure-4-the-application-code-nobody-read\">Fallo 4: El c\u00f3digo de la aplicaci\u00f3n que nadie ley\u00f3<\/a><\/li><li><a href=\"#failure-5-the-cutover-with-no-rollback-plan\">Fallo 5: El cambio sin plan de reversi\u00f3n<\/a><\/li><li><a href=\"#frequently-asked-questions\">Preguntas frecuentes<\/a><ul><li><a href=\"#faq-question-1775142077542\">\u00bfCu\u00e1l es la raz\u00f3n m\u00e1s com\u00fan por la que fallan las migraciones de Oracle a PostgreSQL?<\/a><\/li><li><a href=\"#faq-question-1775142078542\">\u00bfPuede recuperarse de una migraci\u00f3n fallida de Oracle a PostgreSQL?<\/a><\/li><li><a href=\"#faq-question-1775142079542\">\u00bfC\u00f3mo se evita exceder el presupuesto en una migraci\u00f3n?<\/a><\/li><li><a href=\"#faq-question-1775142080542\">\u00bfCu\u00e1l es la cosa m\u00e1s importante que hacer antes de comenzar una migraci\u00f3n?<\/a><\/li><\/ul><\/li><li><a href=\"#in-summary\">En resumen<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"why-do-oracle-to-postgre-sql-migrations-fail\">\u00bfPor qu\u00e9 fallan las migraciones de Oracle a PostgreSQL?<\/h2>\n\n\n\n<p>La mayor\u00eda de los fracasos de la migraci\u00f3n se deben a tres causas fundamentales: subestimaci\u00f3n del volumen de PL\/SQL, dependencias espec\u00edficas de Oracle en el c\u00f3digo de la aplicaci\u00f3n que nadie audit\u00f3 antes de iniciar el proyecto y planes de transici\u00f3n que daban por sentado que no se producir\u00eda el peor de los casos.<br>La tecnolog\u00eda funciona.<br>La planificaci\u00f3n es donde falla.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"failure-1-the-team-that-skipped-the-assessment\">Fallo 1: El equipo que se salt\u00f3 la evaluaci\u00f3n<\/h2>\n\n\n\n<p>Saltarse la evaluaci\u00f3n previa a la migraci\u00f3n no ahorra tiempo, sino que lo traslada a una parte m\u00e1s costosa del proyecto.<br>Un equipo que descubre a mitad de la migraci\u00f3n que tiene 200 procedimientos almacenados en lugar de 20 no ha evitado el esfuerzo de evaluaci\u00f3n; lo ha pagado a tasas de cambio sprint mientras un plazo ya se est\u00e1 moviendo.<\/p>\n\n\n\n<p>Una empresa de telecomunicaciones ejecut\u00f3 ora2pg directamente sobre su esquema sin generar primero el informe de evaluaci\u00f3n.<br>La herramienta de migraci\u00f3n proporciona una calificaci\u00f3n de complejidad y un recuento de objetos; se la saltaron porque confiaban en que el esquema era simple.<\/p>\n\n\n\n<p>Tres semanas despu\u00e9s, el equipo encontr\u00f3 m\u00e1s de 200 procedimientos almacenados en paquetes de Oracle.<br>El informe de evaluaci\u00f3n lo habr\u00eda demostrado en una hora.<br>El plazo original del proyecto era de cuatro semanas.<br>La l\u00ednea de tiempo final fue catorce.<\/p>\n\n\n\n<p>El informe de evaluaci\u00f3n (<code>ora2pg -t SHOW_REPORT<\/code>toma menos de un d\u00eda para ejecutarse y revisarse.<br>Es el documento que establece el presupuesto, el cronograma y el tama\u00f1o del equipo.<br>Ejecutar una migraci\u00f3n sin \u00e9l es equivalente a cotizar un proyecto de construcci\u00f3n sin un estudio previo.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"failure-2-the-pl-sql-that-nobody-counted\">Fallo 2: El PL\/SQL que nadie cont\u00f3<\/h2>\n\n\n\n<p>El \u00edndice de complejidad ora2pg es un punto de partida \u00fatil, pero no es una estimaci\u00f3n de la carga de trabajo.<br>Un esquema clasificado como de \u201cbaja complejidad\u201d puede contener miles de l\u00edneas de PL\/SQL si la estructura del paquete es profunda, ya que ora2pg cuenta los paquetes como objetos individuales independientemente del n\u00famero de procedimientos y funciones que contengan.<\/p>\n\n\n\n<p>Una firma de servicios financieros utiliz\u00f3 la calificaci\u00f3n de complejidad de ora2pg para estimar el esfuerzo de migraci\u00f3n y la present\u00f3 a la junta directiva como base para el presupuesto.<br>La calificaci\u00f3n dec\u00eda baja complejidad.<br>Nadie ampli\u00f3 el informe a detalle a nivel de objeto.<br>Nadie cont\u00f3 los procedimientos individuales dentro de cada paquete.<\/p>\n\n\n\n<p>El esquema ten\u00eda doce paquetes.<br>Los doce paquetes conten\u00edan 140 procedimientos almacenados y funciones individuales.<br>El esfuerzo real de migraci\u00f3n a PL\/pgSQL result\u00f3 ser ocho veces mayor que la estimaci\u00f3n original.<\/p>\n\n\n\n<p>La soluci\u00f3n es sencilla: profundice siempre en el informe ora2pg a nivel de objeto.<br>Cuente los procedimientos individuales dentro de los paquetes, no s\u00f3lo los paquetes en s\u00ed.<br>Luego agregue 30% para probar cada unidad portada.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"failure-3-the-date-columns-that-silently-lost-time\">Fallo 3: Las columnas de FECHA que perdieron tiempo silenciosamente<\/h2>\n\n\n\n<p>Este es el patr\u00f3n de p\u00e9rdida de datos silenciosa m\u00e1s com\u00fan en las migraciones de Oracle a PostgreSQL.<br>Oracle DATE almacena fecha y hora. PostgreSQL DATE almacena solo fecha.<br>Cuando Oracle DATE es mapeado a PostgreSQL DATE - que es el valor por defecto en algunas configuraciones - el componente de tiempo de cada valor es silenciosamente descartado. No hay error. No hay advertencia. Los datos se cargan limpiamente y la hora desaparece.<\/p>\n\n\n\n<p>Una empresa minorista migr\u00f3 su sistema de reservas.<br>La aplicaci\u00f3n se ha probado perfectamente.<br>Pruebas unitarias superadas.<br>El equipo de UAT dio el visto bueno.<\/p>\n\n\n\n<p>Los datos de la prueba se hab\u00edan generado sin componentes temporales: cada fecha era medianoche por coincidencia.<br>El sistema de producci\u00f3n ten\u00eda dos a\u00f1os de registros de reservas con marcas de tiempo reales.<\/p>\n\n\n\n<p>Salieron al aire un s\u00e1bado.<br>El lunes, todas las reservas hist\u00f3ricas mostraban la medianoche como hora.<br>Los datos de las citas de los \u00faltimos dos a\u00f1os tuvieron que ser restaurados de la copia de seguridad de Oracle y revalidados.<\/p>\n\n\n\n<p>La soluci\u00f3n es una l\u00ednea en la configuraci\u00f3n de ora2pg: <code>MODIFICAR_TIPO fecha TIMESTAMP<\/code>.<br>Apl\u00edcalo sin excepci\u00f3n a cada columna DATE en el esquema.<br>No cuesta nada y evita por completo este fallo.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>\u00bfA punto de comenzar una evaluaci\u00f3n de migraci\u00f3n y no est\u00e1s seguro de lo que te espera?<\/strong><br>Ofrezco una evaluaci\u00f3n con una tarifa fija que revisa la complejidad del esquema, el volumen PL\/SQL y las dependencias SQL de la aplicaci\u00f3n, y proporciona un registro de riesgos por escrito antes de que comience cualquier trabajo de migraci\u00f3n.<br><a href=\"https:\/\/rootfan.com\/es\/servicios\/\">Ver qu\u00e9 cubre la evaluaci\u00f3n<\/a><\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"failure-4-the-application-code-nobody-read\">Fallo 4: El c\u00f3digo de la aplicaci\u00f3n que nadie ley\u00f3<\/h2>\n\n\n\n<p>La migraci\u00f3n de la base de datos es la parte visible del proyecto.<br>Los cambios en la aplicaci\u00f3n son lo que la descarrila.<br>Dialecto SQL de Oracle - <code>ROWNUM<\/code>, <code>DE DUAL<\/code>, <code>NVL()<\/code>, <code>(+)<\/code> uniones externas, <code>CONECTAR POR<\/code>, <code>FECHA_SISTEMA<\/code> \u2014 no se ejecuta en PostgreSQL.<br>Si no se han buscado estos patrones en el c\u00f3digo base de la aplicaci\u00f3n antes de iniciar la migraci\u00f3n, se desconoce el alcance del trabajo de cambio de la aplicaci\u00f3n.<br>El alcance desconocido es la forma m\u00e1s r\u00e1pida de incumplir un plazo.<\/p>\n\n\n\n<p>Una empresa de log\u00edstica migr\u00f3 una base de datos de operaciones b\u00e1sicas.<br>La migraci\u00f3n en s\u00ed se complet\u00f3 sin problemas.<br>Conteo de filas coincidente.<br>Los valores de secuencia se restablecieron correctamente.<br>La ventana de transici\u00f3n se cerr\u00f3 a tiempo.<\/p>\n\n\n\n<p>La aplicaci\u00f3n se neg\u00f3 a comenzar.<\/p>\n\n\n\n<p>El c\u00f3digo base conten\u00eda 140 apariciones de Oracle dialect SQL en once servicios diferentes.<br>Nada de esto se.<br>El equipo hab\u00eda asumido que la capa de aplicaci\u00f3n utilizaba SQL ANSI est\u00e1ndar.<br>No fue as\u00ed.<\/p>\n\n\n\n<p>La reparaci\u00f3n requiri\u00f3 tres semanas de trabajo de desarrollo de aplicaciones que no se hab\u00edan presupuestado.<\/p>\n\n\n\n<p>La soluci\u00f3n: antes de escribir una sola l\u00ednea de script de migraci\u00f3n, busca en la base de c\u00f3digo de la aplicaci\u00f3n patrones SQL espec\u00edficos de Oracle.<br>La b\u00fasqueda toma horas.<br>Encontrar los resultados en producci\u00f3n tarda semanas.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"failure-5-the-cutover-with-no-rollback-plan\">Fallo 5: El cambio sin plan de reversi\u00f3n<\/h2>\n\n\n\n<p>\u201cRetrocederemos si es necesario\u201d no es un plan de retroceso.<br>Un plan de reversi\u00f3n es un documento escrito que especifica exactamente lo que requiere la reversi\u00f3n a Oracle, cu\u00e1nto tiempo lleva, qui\u00e9n ejecuta cada paso y cu\u00e1l ser\u00e1 el estado de los datos en el punto de reversi\u00f3n.<br>Si ese documento no existe antes de que se abra la ventana de corte, no hay retroceso: s\u00f3lo hay una recuperaci\u00f3n improvisada bajo presi\u00f3n.<\/p>\n\n\n\n<p>Una organizaci\u00f3n sanitaria se puso en marcha un domingo por la noche.<br>Los problemas de rendimiento aparecieron a las 2 a. m.<br>El equipo tom\u00f3 la decisi\u00f3n de dar marcha atr\u00e1s.<\/p>\n\n\n\n<p>El entorno de Oracle hab\u00eda sido desmantelado parcialmente tres d\u00edas antes para recuperar costos de infraestructura.<br>El DBA que hab\u00eda realizado el desmantelamiento no formaba parte del equipo de transici\u00f3n.<br>Nadie hab\u00eda documentado lo que se hab\u00eda retirado.<\/p>\n\n\n\n<p>La recuperaci\u00f3n dur\u00f3 tres d\u00edas.<br>La organizaci\u00f3n oper\u00f3 con procedimientos manuales de respaldo en todo momento.<\/p>\n\n\n\n<p>La lecci\u00f3n no es que el cambio debi\u00f3 haberse retrasado.<br>La lecci\u00f3n es que el plan de reversi\u00f3n debe redactarse, probarse en staging, y el entorno de Oracle debe permanecer completamente intacto; no parcialmente, no en su mayor\u00eda; hasta que el nuevo sistema haya sido aprobado en producci\u00f3n.<br>Desinstale Oracle despu\u00e9s de la aprobaci\u00f3n, no antes de la entrada en funcionamiento.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"frequently-asked-questions\">Preguntas frecuentes<\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list\">\n<div id=\"faq-question-1775142077542\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question\"><strong>\u00bfCu\u00e1l es la raz\u00f3n m\u00e1s com\u00fan por la que fallan las migraciones de Oracle a PostgreSQL?<\/strong><\/h3>\n<div class=\"rank-math-answer\">\n\n<p>El volumen subestimado de PL\/SQL es la causa m\u00e1s com\u00fan de fallas en el presupuesto y el cronograma.<br \/>Los equipos eval\u00faan el n\u00famero de objetos de base de datos pero no cuentan los procedimientos individuales dentro de los paquetes.<br \/>La segunda causa m\u00e1s com\u00fan es el SQL dialectal de Oracle no descubierto en el c\u00f3digo de la aplicaci\u00f3n que s\u00f3lo sale a la luz en el momento de la transici\u00f3n.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1775142078542\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question\"><strong>\u00bfPuede recuperarse de una migraci\u00f3n fallida de Oracle a PostgreSQL?<\/strong><\/h3>\n<div class=\"rank-math-answer\">\n\n<p>S\u00ed, si el entorno Oracle sigue intacto.<br \/>El requisito previo fundamental es mantener el sistema Oracle de origen plenamente operativo hasta que la migraci\u00f3n se haya aprobado en producci\u00f3n.<br \/>Si Oracle se ha desmantelado parcialmente antes del cierre, la recuperaci\u00f3n se convierte en un ejercicio de restauraci\u00f3n en lugar de una reversi\u00f3n, que es significativamente m\u00e1s costosa y lenta.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1775142079542\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question\"><strong>\u00bfC\u00f3mo se evita exceder el presupuesto en una migraci\u00f3n?<\/strong><\/h3>\n<div class=\"rank-math-answer\">\n\n<p>Ejecute el informe completo de evaluaci\u00f3n ora2pg antes de fijar un presupuesto.<br \/>Ampl\u00edelo al nivel de detalle de los objetos y cuente los procedimientos individuales dentro de los paquetes.<br \/>Busque en la base de c\u00f3digo de la aplicaci\u00f3n el dialecto SQL de Oracle antes de definir el alcance del trabajo de cambio de la aplicaci\u00f3n.<br \/>Presupueste al menos el 30 %% del esfuerzo del proyecto para pruebas.<br \/>Toda migraci\u00f3n que se ha excedido significativamente del presupuesto ha omitido al menos uno de estos pasos.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1775142080542\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question\"><strong>\u00bfCu\u00e1l es la cosa m\u00e1s importante que hacer antes de comenzar una migraci\u00f3n?<\/strong><\/h3>\n<div class=\"rank-math-answer\">\n\n<p>Ejecute la evaluaci\u00f3n previa a la migraci\u00f3n.<br \/>El informe de evaluaci\u00f3n de ora2pg (ora2pg -t SHOW_REPORT) le ofrece el recuento de objetos, una clasificaci\u00f3n de complejidad y una estimaci\u00f3n del esfuerzo de migraci\u00f3n.<br \/>Se tarda menos de un d\u00eda y es la \u00fanica base fiable para el presupuesto y el calendario de un proyecto.<br \/>Cada otra decisi\u00f3n de planificaci\u00f3n emana de ella.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"in-summary\">En resumen<\/h2>\n\n\n\n<p>Estos cinco fallos no son inusuales.<br>Son el resultado por defecto cuando la preparaci\u00f3n no se corresponde con la complejidad del trabajo.<\/p>\n\n\n\n<p>La tecnolog\u00eda de las bases de datos no es el riesgo.<br>PostgreSQL es maduro, listo para producci\u00f3n y se usa a gran escala en la banca, las telecomunicaciones y la sanidad en la UE.<br>El riesgo est\u00e1 en la planificaci\u00f3n: evaluaciones omitidas, clasificaciones de complejidad mal interpretadas, tipos de datos no mapeados, c\u00f3digo de aplicaci\u00f3n no auditado y planes de reversi\u00f3n que s\u00f3lo existen como intenciones.<\/p>\n\n\n\n<p>Cada uno de estos fracasos fue evitable con una semana de preparaci\u00f3n adecuada al inicio del proyecto.<\/p>\n\n\n\n<p>Si est\u00e1s planeando una migraci\u00f3n y quieres una opini\u00f3n independiente sobre d\u00f3nde reside el riesgo antes de comprometerte con un cronograma o presupuesto, <a href=\"https:\/\/rootfan.com\/es\/servicios\/\">ponerse en contacto<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Resumen: La mayor\u00eda de las migraciones de Oracle a PostgreSQL que fallan no fallan porque PostgreSQL no estuviera listo. Fallan porque el proyecto no estaba listo. Los cinco patrones a continuaci\u00f3n se repiten en organizaciones y sectores porque los equipos hacen las mismas suposiciones: que las herramientas manejan m\u00e1s de lo que lo hacen, que el volumen de PL\/SQL es menor de lo que es y que un plan de reversi\u00f3n... <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/rootfan.com\/es\/oracle-to-postgresql-migration-failure\/\" class=\"more-link\">Seguir leyendo<span class=\"screen-reader-text\"> \u201c5 Proyectos de Migraci\u00f3n de Oracle a PostgreSQL que Fallaron (Y Por Qu\u00e9)\u201d<\/span><\/a><\/p>","protected":false},"author":1,"featured_media":6668,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_focus_keyword":"oracle to postgresql migration failure","rank_math_title":"5 Oracle to PostgreSQL Migration Projects That Failed (And Why)","rank_math_description":"Most Oracle to PostgreSQL migrations fail because of planning mistakes, not technology. These five real failure patterns show what goes wrong and how to avoid it.","rank_math_robots":"","rank_math_og_title":"","rank_math_og_description":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[146],"tags":[140,141,137,142],"class_list":["post-6667","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-oracle-to-postgresql","tag-audit","tag-data-types","tag-migration","tag-pl-sql"],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/rootfan.com\/wp-content\/uploads\/pexels-photo-1109355.jpeg?fit=1880%2C1253&ssl=1","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/posts\/6667","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/comments?post=6667"}],"version-history":[{"count":5,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/posts\/6667\/revisions"}],"predecessor-version":[{"id":6785,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/posts\/6667\/revisions\/6785"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/media\/6668"}],"wp:attachment":[{"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/media?parent=6667"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/categories?post=6667"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rootfan.com\/es\/wp-json\/wp\/v2\/tags?post=6667"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}