{
    "title": "Forge, el proceso de c\u00f3digo abierto para generar SDK, interfaces de l\u00ednea de comandos, documentaci\u00f3n y mucho m\u00e1s",
    "modified_at": "2026-10-05 10:52:07",
    "published_at": "2026-10-05 10:52:00",
    "url": "https://cloudflare.another.co/forge-el-proceso-de-codigo-abierto-para-generar-sdk-interfaces-de-linea-de-comandos-documentacion-y-mucho-mas",
    "short_url": "http://prez.ly/jsge",
    "culture": "es_MX",
    "language": "ES",
    "slug": "forge-el-proceso-de-codigo-abierto-para-generar-sdk-interfaces-de-linea-de-comandos-documentacion-y-mucho-mas",
    "body": "<p style=\"text-align: justify\"><strong>Ciudad de M&eacute;xico, 5 de octubre de 2026.&mdash; </strong><a href=\"https://www.cloudflare.com/\">Cloudflare, Inc.</a> (NYSE: NET), la empresa l&iacute;der de conectividad en la nube, present&oacute; <a href=\"https://github.com/cloudflare/forge\"><strong>Forge</strong></a>, un enfoque renovado para generar SDK, interfaces de l&iacute;nea de comandos, documentaci&oacute;n y bibliotecas. Forge es un proceso de generaci&oacute;n de c&oacute;digo abierto, modular y extensible que cualquiera puede desplegar y ejecutar de forma gratuita.</p><p style=\"text-align: justify\">Forge est&aacute; en sus primeros pasos, pero ya genera el contenido necesario para el <a href=\"https://blog.cloudflare.com/cloudflare-cf-cli-launch/\">CLI cf,</a> y en los pr&oacute;ximos meses impulsar&aacute; la documentaci&oacute;n de la API de Cloudflare, los SDK y mucho m&aacute;s.</p><p style=\"text-align: justify\">La empresa desarroll&oacute; Forge porque lo necesitaba para tratar a los agentes como sus clientes. Ahora lo publica como c&oacute;digo abierto porque considera que todos deber&iacute;an poder generar todas las superficies que los agentes necesitan. Antes, solo los productos para desarrolladores necesitaban CLI, SDK de API y servidores MCP, todos con una documentaci&oacute;n excelente. Ahora esos son los requisitos b&aacute;sicos para cualquier producto.</p><h4 id=\"la-api-supero-a-sus-generadores\" style=\"text-align: justify\"><strong>La API super&oacute; a sus generadores</strong></h4><p style=\"text-align: justify\">La API de Cloudflare cuenta con m&aacute;s de 3,500 operaciones, y los cientos de servicios que alimentan estas API est&aacute;n escritos en muchos lenguajes, incluidos Rust, Go, TypeScript y Python. Al embarcarse en el desarrollo de una CLI para toda la API de Cloudflare, incluidos los SDK y la documentaci&oacute;n de la API, se necesitaba de un proceso de generaci&oacute;n de c&oacute;digo capaz de manejar esta escala. Ese proceso debe ser lo suficientemente flexible para funcionar en todos los lenguajes y adaptarse a las formas de trabajar de cada uno de los equipos de ingenier&iacute;a.</p><p style=\"text-align: justify\">Se requer&iacute;a una forma para reducir la sobrecarga de coordinaci&oacute;n entre grupos. Cuando un equipo de producto de Cloudflare realiza un cambio en la API, tiene que poder utilizar una versi&oacute;n de vista previa de la CLI, el SDK y el sitio de documentaci&oacute;n generados para toda Cloudflare antes de fusionar ese cambio y ofrecerlo a los clientes. Necesitaban una forma de garantizar que no rompieran inadvertidamente el pipeline de generaci&oacute;n, y un sistema que pudieran ampliar para generar m&aacute;s que un simple SDK, desde Cap&#039;n Web hasta MCP y m&aacute;s all&aacute;.</p><p style=\"text-align: justify\">El equipo prob&oacute; varios productos alojados que pretend&iacute;an resolver esto y utilizaron algunos de ellos en producci&oacute;n. Ninguno resolvi&oacute; este problema y algunos dejaron de funcionar por completo. Se implementaba un cambio que sin querer romp&iacute;a el proceso de generaci&oacute;n, otro equipo lo detectaba en el momento del lanzamiento, y perdi&oacute; demasiado tiempo nadando contra la corriente a trav&eacute;s de herramientas alojadas que no pod&iacute;a controlar, coordinando cambios entre equipos y proveedores.</p><p style=\"text-align: justify\">As&iacute; fue como empezaron a desarrollar Forge.</p><p style=\"text-align: justify\">Forge busca solucionar todos estos problemas: se ejecuta en CI, en los repositorios de la API de cada equipo, igual que el revisor de c&oacute;digo de la IA y los procesos de pruebas. Analiza cada cambio y luego genera versiones de vista previa de la CLI, la documentaci&oacute;n y los SDK con solo los cambios resaltados, que se pueden instalar para probar. Es el mismo principio que <a href=\"https://blog.cloudflare.com/worker-previews/\">Workers Previews</a>: una versi&oacute;n de vista previa completa para cada cambio, pero aplicada a la generaci&oacute;n de SDK a escala, incluso cuando la superficie de la API est&aacute; distribuida en cientos de servicios y repositorios. Eso es lo que Forge busca ofrecer.</p>\n    <figure\n        class=\"release-content-image release-content-image--contained release-content-image--align-center\"\n        data-component=\"image-zoom-popup\"\n        data-image-zoom-popup-selector=\".release-content-image__image\"\n        data-image-zoom-popup-i18n=\"data:application/json;base64,eyJEb3dubG9hZCI6IkRvd25sb2FkIn0=\"\n        data-image-zoom-popup-tracking-views-event=\"Story Image View\"\n        data-image-zoom-popup-tracking-download-event=\"Story Image Download\"\n        data-image-zoom-popup-placement=\"content\"\n    >\n        <div class=\"image-thumbnail-rollover\" style=\"width: 100%\">\n            <img\n                src=\"https://cdn.uc.assets.prezly.com/c1009c70-2a02-426b-8531-6fe3488fcd98/-/format/auto/\"\n                                class=\"release-content-image__image image-thumbnail-rollover__image\"\n                data-description=\"\"\n                id=\"image-c1009c70-2a02-426b-8531-6fe3488fcd98\"\n                data-id=\"c1009c70-2a02-426b-8531-6fe3488fcd98\"\n                data-original=\"https://cdn.uc.assets.prezly.com/c1009c70-2a02-426b-8531-6fe3488fcd98/-/inline/no/Imagen+1.png\"\n                data-mfp-src=\"https://cdn.uc.assets.prezly.com/c1009c70-2a02-426b-8531-6fe3488fcd98/-/format/auto/\"\n                alt=\"Story image\"\n            />\n            <div class=\"image-thumbnail-rollover__caption\">\n                <svg class=\"icon icon-expand image-thumbnail-rollover__caption-icon\">\n                <use xlink:href=\"#icon-expand\"></use>\n            </svg>            </div>\n        </div>\n\n        <figcaption class=\"release-content-image__caption\"></figcaption>\n    </figure>\n<p style=\"text-align: justify\">Forge te ayuda a detectar problemas en la integraci&oacute;n continua, antes de que causen problemas a futuro.</p><h4 id=\"los-transformadores-de-forge-pueden-generar-cualquier-cosa-incluido-capn-web\" style=\"text-align: justify\"><strong>Los transformadores de Forge pueden generar cualquier cosa, incluido Cap&#039;n Web</strong></h4><p style=\"text-align: justify\">Cloudflare tiene m&aacute;s razones que la mayor&iacute;a para querer un generador que pueda superar los objetivos de lenguaje habituales. <a href=\"https://capnweb.com/\">Cap&#039;n Web</a> es el sistema RPC de Cloudflare que permite a TypeScript llamar a una API remota como si fuera un m&eacute;todo local.</p>\n    <figure\n        class=\"release-content-image release-content-image--contained release-content-image--align-center\"\n        data-component=\"image-zoom-popup\"\n        data-image-zoom-popup-selector=\".release-content-image__image\"\n        data-image-zoom-popup-i18n=\"data:application/json;base64,eyJEb3dubG9hZCI6IkRvd25sb2FkIn0=\"\n        data-image-zoom-popup-tracking-views-event=\"Story Image View\"\n        data-image-zoom-popup-tracking-download-event=\"Story Image Download\"\n        data-image-zoom-popup-placement=\"content\"\n    >\n        <div class=\"image-thumbnail-rollover\" style=\"width: 100%\">\n            <img\n                src=\"https://cdn.uc.assets.prezly.com/72e6725d-f12e-4a13-947d-8383e7c4ad9d/-/format/auto/\"\n                                class=\"release-content-image__image image-thumbnail-rollover__image\"\n                data-description=\"\"\n                id=\"image-72e6725d-f12e-4a13-947d-8383e7c4ad9d\"\n                data-id=\"72e6725d-f12e-4a13-947d-8383e7c4ad9d\"\n                data-original=\"https://cdn.uc.assets.prezly.com/72e6725d-f12e-4a13-947d-8383e7c4ad9d/-/inline/no/Untitled\"\n                data-mfp-src=\"https://cdn.uc.assets.prezly.com/72e6725d-f12e-4a13-947d-8383e7c4ad9d/-/format/auto/\"\n                alt=\"Story image\"\n            />\n            <div class=\"image-thumbnail-rollover__caption\">\n                <svg class=\"icon icon-expand image-thumbnail-rollover__caption-icon\">\n                <use xlink:href=\"#icon-expand\"></use>\n            </svg>            </div>\n        </div>\n\n        <figcaption class=\"release-content-image__caption\"></figcaption>\n    </figure>\n<p style=\"text-align: justify\">Forge hace posible tomar una especificaci&oacute;n OpenAPI y generar Cap&#039;n Web directamente. Esto permite generar <a href=\"https://developers.cloudflare.com/workers/runtime-apis/bindings/?cf_page=es-la%2Fforge-open-source-generation-pipeline%2F\">bindings</a> de Workers a otras API. Al fin y al cabo, los enlaces en el entorno de ejecuci&oacute;n de Workers se implementan como Workers que exponen m&eacute;todos RPC.</p><p style=\"text-align: justify\">Esto no es exclusivo de Cap&#039;n Web: otras herramientas conocidas que quiz&aacute;s ya se utilizan necesitan lo mismo. Si se usa <a href=\"https://tanstack.com/query/\">TanStack Query</a>, idealmente de pueden generar enlaces de TanStack Query para una aplicaci&oacute;n, creados directamente desde su propia API. Siempre actualizados, siempre validados contra tu API real. Lo mismo ocurre con la generaci&oacute;n de esquemas Zod o Valibot, servidores MCP, o cualquier otra cosa que facilite el consumo de una API.</p>\n    <figure\n        class=\"release-content-image release-content-image--contained release-content-image--align-center\"\n        data-component=\"image-zoom-popup\"\n        data-image-zoom-popup-selector=\".release-content-image__image\"\n        data-image-zoom-popup-i18n=\"data:application/json;base64,eyJEb3dubG9hZCI6IkRvd25sb2FkIn0=\"\n        data-image-zoom-popup-tracking-views-event=\"Story Image View\"\n        data-image-zoom-popup-tracking-download-event=\"Story Image Download\"\n        data-image-zoom-popup-placement=\"content\"\n    >\n        <div class=\"image-thumbnail-rollover\" style=\"width: 100%\">\n            <img\n                src=\"https://cdn.uc.assets.prezly.com/93557495-b128-49e3-a9a6-eb5888724d9f/-/format/auto/\"\n                                class=\"release-content-image__image image-thumbnail-rollover__image\"\n                data-description=\"\"\n                id=\"image-93557495-b128-49e3-a9a6-eb5888724d9f\"\n                data-id=\"93557495-b128-49e3-a9a6-eb5888724d9f\"\n                data-original=\"https://cdn.uc.assets.prezly.com/93557495-b128-49e3-a9a6-eb5888724d9f/-/inline/no/Imagen+2.png\"\n                data-mfp-src=\"https://cdn.uc.assets.prezly.com/93557495-b128-49e3-a9a6-eb5888724d9f/-/format/auto/\"\n                alt=\"Story image\"\n            />\n            <div class=\"image-thumbnail-rollover__caption\">\n                <svg class=\"icon icon-expand image-thumbnail-rollover__caption-icon\">\n                <use xlink:href=\"#icon-expand\"></use>\n            </svg>            </div>\n        </div>\n\n        <figcaption class=\"release-content-image__caption\"></figcaption>\n    </figure>\n<p>Esto es posible porque los generadores de c&oacute;digo de Forge son flexibles. Est&aacute;n dise&ntilde;ados para mover informaci&oacute;n de una salida a otra.</p><h4 id=\"los-transformadores-de-forge-se-pueden-encadenar-generar-salidas-a-partir-de-otras-salidas\" style=\"text-align: justify\"><strong>Los transformadores de Forge se pueden encadenar: generar salidas a partir de otras salidas</strong></h4><p style=\"text-align: justify\">Forge fue dise&ntilde;ado para ser modular y extensible y admitir muchos tipos de entradas y salidas. Forge proporciona generadores de CLI, SDK y documentaci&oacute;n, pero nada les impide a&ntilde;adir un transformador que genere un paquete espec&iacute;fico de una biblioteca o incluso un panel de control o una aplicaci&oacute;n completa. Forge admite OpenAPI como tipo de entrada hoy en d&iacute;a, pero lo han dise&ntilde;ado para permitir <a href=\"http://asyncapi.com/\">AsyncAPI</a>, GraphQL, Cap&#039;n Proto, Protobuf u otros formatos de entrada en el futuro.</p><p style=\"text-align: justify\">Esto va m&aacute;s all&aacute; de la simple compatibilidad: les permite encadenar objetivos, mediante la salida de un objetivo para producir otros. Esto es habitual en otros generadores donde los objetivos de CLI y Terraform se producen a partir del SDK de Go. Pero lo que falta, y lo que Forge proporciona, es una forma de que el usuario controle este sistema de encadenamiento por s&iacute; mismo.</p><p style=\"text-align: justify\">El propio equipo de Cloudflare precisaba una soluci&oacute;n para esto, porque su propia CLI cf est&aacute; escrita en TypeScript, algo que otros generadores de SDK generalmente no encadenan para las CLI. Pero la situaci&oacute;n les hizo reconocer un problema mayor: &iquest;por qu&eacute; deber&iacute;a una herramienta generadora de SDK tomar esta decisi&oacute;n por ustedes? Quiz&aacute;s son un equipo de Python y quieren que la CLI est&eacute; en Python.</p><p style=\"text-align: justify\">Se puede pensar, &laquo;<em>Bueno, &iquest;y a qui&eacute;n le importa si est&aacute; en Python o no? El c&oacute;digo se genera autom&aacute;ticamente</em>&raquo;, es porque las CLIs son diferentes. Las CLIs suelen introducir comportamientos solo locales que no tendr&iacute;an sentido en un SDK. Comportamientos que se escriben a mano porque inherentemente no est&aacute;n respaldados por ninguna llamada a la API. Por ejemplo, la CLI cf tiene comandos como cf dev y cf build que se a&ntilde;aden sobre el resto de la salida generada. Estos comandos necesitan llamar a API de TypeScript de otros paquetes como Vite.</p><p style=\"text-align: justify\">Ahora, si est&aacute;s generando tu CLI y tu documentaci&oacute;n puramente a partir de tu especificaci&oacute;n OpenAPI, &iquest;c&oacute;mo introduces esos comandos escritos a mano en tu documentaci&oacute;n, para que puedan documentarse junto al resto?</p><p style=\"text-align: justify\">No se detect&oacute; ninguna herramienta existente que haga esto hoy en d&iacute;a, y sin embargo es exactamente lo que se requiere para cf. As&iacute; que lo incorporaron a Forge.</p><h4 id=\"modificar-tu-api-sin-afectar-a-los-usuarios\" style=\"text-align: justify\"><strong>Modificar tu API sin afectar a los usuarios</strong></h4><p style=\"text-align: justify\">Forge tambi&eacute;n los est&aacute; preparando para una mejor versi&oacute;n de API. La API v4 de Cloudflare ha sido la &uacute;nica versi&oacute;n principal de su API durante 10 a&ntilde;os. Desde entonces, parece que no han lanzado ninguna nueva versi&oacute;n principal, pero seg&uacute;n las definiciones de SemVer han realizado bastantes cambios que merecer&iacute;an una nueva versi&oacute;n principal. Al mismo tiempo, varias operaciones de su API presentan etiquetas internas &laquo;v2&raquo; o identificadores &laquo;beta&raquo; que han sobrevivido con dificultades a esa parte del ciclo de vida del producto.</p><p style=\"text-align: justify\">Despu&eacute;s de tantos a&ntilde;os con la API v4, el equipo es muy consciente de que una nueva versi&oacute;n v5 dejar&iacute;a atr&aacute;s a muchos de sus clientes. Por eso, Forge est&aacute; lanzando novedades y est&aacute;n trabajando en un enfoque de versionado de API que permita lanzar nuevas versiones principales de API sin afectar a los clientes o SDKs antiguos.</p><p style=\"text-align: justify\">Muy pronto se dar&aacute; a conocer m&aacute;s informaci&oacute;n sobre los SDK, incluidos TypeScript, Rust, Python, Go, PHP y Terraform. Especialmente Terraform. Se sabe que actualizar cualquier proveedor de Terraform conlleva su propio nivel de rigor, y van a prestar una atenci&oacute;n especial a la transici&oacute;n de Terraform.</p><h4 id=\"las-herramientas-esenciales-deben-estar-al-alcance-de-todos\" style=\"text-align: justify\"><strong>Las herramientas esenciales deben estar al alcance de todos</strong></h4><p style=\"text-align: justify\">Cloudflare considera que construir herramientas para APIs es una parte fundamental del Internet, y deber&iacute;an poder hacerlo sin necesitar un producto SaaS. Deber&iacute;an ser due&ntilde;os de sus SDKs, CLIs y documentaci&oacute;n. Y si los generan, deber&iacute;an poder hacer con ellos lo que quieran, donde quieran, de forma gratuita.</p><p style=\"text-align: justify\">Por eso pone <a href=\"https://github.com/cloudflare/forge\">Forge a disposici&oacute;n de todos como c&oacute;digo abierto</a> bajo la permisiva licencia Apache 2.0 con la intenci&oacute;n de que la gente se una en este camino y contribuya.</p><hr /><a href='https://cdn.uc.assets.prezly.com/b37310de-4822-444b-83d3-8352cbc3296a/-/inline/no/cloudflareoct26cloudflare-presenta-forge.docx' class='release-content-attachment' id='attachment-b37310de-4822-444b-83d3-8352cbc3296a' data-type='attachment' data-track='Story File Download' data-placement='content' data-id='b37310de-4822-444b-83d3-8352cbc3296a'>\n    <span class='release-content-attachment__icon'>\n        <svg class=\"icon icon-download\">\n                <use xlink:href=\"#icon-download\"></use>\n            </svg>\n    </span>\n    <span class='release-content-attachment__details'>\n        <strong class='release-content-attachment__title'>Cloudflare_Oct26_Cloudflare presenta Forge.docx</strong>\n        <em class='release-content-attachment__subtitle'>4 MB</em>\n    </span>\n</a><div class=\"release-content-contact\" id=\"contact-b1565fcf-e191-46da-930c-80baf53d13a1\">\n    \n    <div class=\"release-content-contact__details\">\n        <strong class=\"release-content-contact__name\">Elina Ambriz</strong>\n        <em class=\"release-content-contact__description\">Senior Account Executive, another</em>\n        <ul class=\"release-content-contact__details-list\"><li class=\"release-content-contact__details-list-item\"><a href=\"mailto:elina.ambriz@another.co\"  class=\"release-content-contact__details-list-item-link\" title=\"elina.ambriz@another.co\"><svg class=\"icon icon-paper-plane release-content-contact__details-list-item-icon\">\n                <use xlink:href=\"#icon-paper-plane\"></use>\n            </svg>elina.ambriz@another.co</a></li></ul>\n    </div>\n</div><div class=\"release-content-contact\" id=\"contact-b74f7603-5f1e-44f8-995e-4e73bfc11010\">\n    \n    <div class=\"release-content-contact__details\">\n        <strong class=\"release-content-contact__name\">Larissa Moran</strong>\n        <em class=\"release-content-contact__description\">Account Executive, another</em>\n        <ul class=\"release-content-contact__details-list\"><li class=\"release-content-contact__details-list-item\"><a href=\"mailto:larissa.moran@another.co\"  class=\"release-content-contact__details-list-item-link\" title=\"larissa.moran@another.co\"><svg class=\"icon icon-paper-plane release-content-contact__details-list-item-icon\">\n                <use xlink:href=\"#icon-paper-plane\"></use>\n            </svg>larissa.moran@another.co</a></li></ul>\n    </div>\n</div>",
    "header": {
        "large": "https://cdn.uc.assets.prezly.com/21111a79-b919-49bd-b0b5-3247d045ed7c/-/preview/1200x1200/-/format/auto/",
        "release": "https://cdn.uc.assets.prezly.com/21111a79-b919-49bd-b0b5-3247d045ed7c/-/preview/1200x1200/-/format/auto/"
    },
    "images": [
        {
            "caption": "",
            "original": "https://cdn.uc.assets.prezly.com/c1009c70-2a02-426b-8531-6fe3488fcd98/",
            "medium": "https://cdn.uc.assets.prezly.com/c1009c70-2a02-426b-8531-6fe3488fcd98/-/preview/500x500/-/format/auto/",
            "small": "https://cdn.uc.assets.prezly.com/c1009c70-2a02-426b-8531-6fe3488fcd98/-/preview/200x200/-/format/auto/",
            "thumbnail": "https://cdn.uc.assets.prezly.com/c1009c70-2a02-426b-8531-6fe3488fcd98/-/preview/100x100/-/format/auto/",
            "square": "https://cdn.uc.assets.prezly.com/c1009c70-2a02-426b-8531-6fe3488fcd98/-/scale_crop/200x200/center/-/format/auto/",
            "squaresmall": "https://cdn.uc.assets.prezly.com/c1009c70-2a02-426b-8531-6fe3488fcd98/-/scale_crop/58x58/center/-/format/auto/"
        },
        {
            "caption": "",
            "original": "https://cdn.uc.assets.prezly.com/72e6725d-f12e-4a13-947d-8383e7c4ad9d/",
            "medium": "https://cdn.uc.assets.prezly.com/72e6725d-f12e-4a13-947d-8383e7c4ad9d/-/format/auto/",
            "small": "https://cdn.uc.assets.prezly.com/72e6725d-f12e-4a13-947d-8383e7c4ad9d/-/preview/200x200/-/format/auto/",
            "thumbnail": "https://cdn.uc.assets.prezly.com/72e6725d-f12e-4a13-947d-8383e7c4ad9d/-/preview/100x100/-/format/auto/",
            "square": "https://cdn.uc.assets.prezly.com/72e6725d-f12e-4a13-947d-8383e7c4ad9d/-/scale_crop/200x200/center/-/format/auto/",
            "squaresmall": "https://cdn.uc.assets.prezly.com/72e6725d-f12e-4a13-947d-8383e7c4ad9d/-/scale_crop/58x58/center/-/format/auto/"
        },
        {
            "caption": "",
            "original": "https://cdn.uc.assets.prezly.com/93557495-b128-49e3-a9a6-eb5888724d9f/",
            "medium": "https://cdn.uc.assets.prezly.com/93557495-b128-49e3-a9a6-eb5888724d9f/-/preview/500x500/-/format/auto/",
            "small": "https://cdn.uc.assets.prezly.com/93557495-b128-49e3-a9a6-eb5888724d9f/-/preview/200x200/-/format/auto/",
            "thumbnail": "https://cdn.uc.assets.prezly.com/93557495-b128-49e3-a9a6-eb5888724d9f/-/preview/100x100/-/format/auto/",
            "square": "https://cdn.uc.assets.prezly.com/93557495-b128-49e3-a9a6-eb5888724d9f/-/scale_crop/200x200/center/-/format/auto/",
            "squaresmall": "https://cdn.uc.assets.prezly.com/93557495-b128-49e3-a9a6-eb5888724d9f/-/scale_crop/58x58/center/-/format/auto/"
        }
    ],
    "attachments": [
        {
            "description": "",
            "extension": "docx",
            "url": "https://cdn.uc.assets.prezly.com/b37310de-4822-444b-83d3-8352cbc3296a/-/inline/no/cloudflareoct26cloudflare-presenta-forge.docx"
        }
    ],
    "contacts": [
        {
            "name": "Elina Ambriz",
            "company": "another",
            "description": "Senior Account Executive",
            "email": "elina.ambriz@another.co",
            "website": null,
            "address": null,
            "telephone": null,
            "mobile": null,
            "twitter": null,
            "facebook": null,
            "linkedin": null,
            "instagram": null
        },
        {
            "name": "Larissa Moran",
            "company": "another",
            "description": "Account Executive",
            "email": "larissa.moran@another.co",
            "website": null,
            "address": null,
            "telephone": null,
            "mobile": null,
            "twitter": null,
            "facebook": null,
            "linkedin": null,
            "instagram": null
        }
    ],
    "author": {
        "first_name": "Elina",
        "last_name": "Ambriz Valencia"
    },
    "format_version": 6
}