{"id":17357,"date":"2026-01-22T10:05:25","date_gmt":"2026-01-22T10:05:25","guid":{"rendered":"https:\/\/ptc.wpml.org\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/"},"modified":"2026-03-20T09:56:42","modified_gmt":"2026-03-20T09:56:42","slug":"como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc","status":"publish","type":"documentation","link":"https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/","title":{"rendered":"C\u00f3mo traducir contenido din\u00e1mico en Rails con la API de PTC"},"content":{"rendered":"\n<div class=\"wp-block-uagb-container uagb-layout-flex uagb-block-7d0a9c8b default uagb-is-root-container\">\n<div class=\"wp-block-uagb-container uagb-block-ec2c2fb6\">\n<p class=\"lead has-medium-font-size\">Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR). Esto incluye entradas del blog, informaci\u00f3n de productos y cualquier texto almacenado en su base de datos. <\/p>\n\n\n\n<p>A continuaci\u00f3n, le guiaremos por el proceso de traducci\u00f3n de contenido din\u00e1mico en aplicaciones Rails en dos partes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Primero, aprender\u00e1 los tres endpoints de la API por separado: c\u00f3mo enviar contenido para traducirlo, comprobar su estado y recuperar las traducciones completadas.<\/li>\n\n\n\n<li>Despu\u00e9s, ver\u00e1 c\u00f3mo conectar estos endpoints en un flujo de trabajo completo mediante callbacks o sondeo.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div id=\"h-translating-texts\" class=\"wp-block-uagb-container uagb-block-480d8777 default uagb-is-root-container\">\n<h2 class=\"wp-block-heading\" id=\"before-starting\">Antes de empezar<\/h2>\n\n\n\n<p>Esta gu\u00eda asume que tiene una aplicaci\u00f3n Rails configurada con una forma de almacenar traducciones (como Mobility, Globalize o su propia soluci\u00f3n).<\/p>\n\n\n\n<p>Si empieza desde cero o quiere ver una implementaci\u00f3n completa, hemos creado una aplicaci\u00f3n de demostraci\u00f3n en Rails que muestra la integraci\u00f3n con PTC de principio a fin. La demo utiliza: <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/github.com\/shioyama\/mobility\" target=\"_blank\" rel=\"noreferrer noopener\">Mobility<\/a> para almacenar traducciones<\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/bkeepers\/dotenv\" target=\"_blank\" rel=\"noreferrer noopener\">dotenv-rails<\/a> para variables de entorno<\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/collectiveidea\/delayed_job_active_record\" target=\"_blank\" rel=\"noreferrer noopener\">delayed_job_active_record<\/a> para el procesamiento en segundo plano<\/li>\n<\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-uagb-buttons uagb-buttons__outer-wrap uagb-btn__default-btn uagb-btn-tablet__default-btn uagb-btn-mobile__default-btn uagb-block-60bbf702\"><div class=\"uagb-buttons__wrap uagb-buttons-layout-wrap \">\n<div class=\"wp-block-uagb-buttons-child uagb-buttons__outer-wrap uagb-block-5ea4a834 wp-block-button\"><div class=\"uagb-button__wrapper\"><a class=\"uagb-buttons-repeater wp-block-button__link\" aria-label=\"\" href=\"https:\/\/github.com\/nkavt-onthegosystems\/rails-ptc-content-translation-demo\" rel=\"follow noopener\" target=\"_blank\" role=\"button\"><div class=\"uagb-button__link\">Vea la aplicaci\u00f3n de demostraci\u00f3n en GitHub \u2192<\/div><\/a><\/div><\/div>\n<\/div><\/div>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"set-up-ptc\">Configure PTC y obtenga su token de API<\/h2>\n\n\n\n<p>Para empezar, necesita una cuenta de PTC y un token de API:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><a href=\"https:\/\/app.ptc.wpml.org\/users\/sign_up\">Reg\u00edstrese en PTC<\/a>. Crear una cuenta es gratis, y puede traducir 20.000 palabras a 2 idiomas sin coste. Despu\u00e9s, <a href=\"https:\/\/ptc.wpml.org\/purchase\/\">paga por lo que traduzca<\/a>.<\/li>\n\n\n\n<li>Cree un nuevo proyecto y seleccione <strong>integraci\u00f3n de API.<\/strong><\/li>\n\n\n\n<li>Copie el token de API que PTC genera al final de la configuraci\u00f3n del proyecto. Necesitar\u00e1 este token para autenticar todas las solicitudes. Puede encontrar el mismo token en el panel de su proyecto, en <strong>Ajustes \u2192 Gestionar tokens de API<\/strong>.  <\/li>\n<\/ol>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tclass=\"wp-block-uagb-image-gallery uagb-block-39ff3b72     \"\n\t\t\t\t\t\tstyle=\"\"\n\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"spectra-image-gallery spectra-image-gallery__layout--masonry spectra-image-gallery__layout--masonry-col-2 spectra-image-gallery__layout--masonry-col-tab-1 spectra-image-gallery__layout--masonry-col-mob-1\">\n\t\t\t\t\t\t\t\t\t\t\t<div class='spectra-image-gallery__media-wrapper--isotope'>\n\t\t\t\t\t\t\t<div class='spectra-image-gallery__media-wrapper' data-spectra-gallery-image-id='17350' tabindex=\"0\">\n\t\t\t\t\t\t\t<div class=\"spectra-image-gallery__media spectra-image-gallery__media--masonry\">\n\t\t\t\t<picture>\n\t\t\t\t\t<source media=\"(min-width: 1024px)\" srcset=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project.png\">\n\t\t\t\t\t<source media=\"(min-width: 768px)\" srcset=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-1024x517.png\">\n\t\t\t\t\t<img decoding=\"async\" class=\"spectra-image-gallery__media-thumbnail spectra-image-gallery__media-thumbnail--masonry\" src=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-300x152.png\" alt=\"Creating a new project in PTC\" loading=\"lazy\" \/>\n\t\t\t\t<\/picture>\n\t\t\t\t<div class=\"spectra-image-gallery__media-thumbnail-blurrer\"><\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"spectra-image-gallery__media-thumbnail-caption-wrapper spectra-image-gallery__media-thumbnail-caption-wrapper--bar-outside\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"spectra-image-gallery__media-thumbnail-caption spectra-image-gallery__media-thumbnail-caption--bar-outside\">\n\t\t\t\t\tCreating a new project\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class='spectra-image-gallery__media-wrapper--isotope'>\n\t\t\t\t\t\t\t<div class='spectra-image-gallery__media-wrapper' data-spectra-gallery-image-id='17351' tabindex=\"0\">\n\t\t\t\t\t\t\t<div class=\"spectra-image-gallery__media spectra-image-gallery__media--masonry\">\n\t\t\t\t<picture>\n\t\t\t\t\t<source media=\"(min-width: 1024px)\" srcset=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration.png\">\n\t\t\t\t\t<source media=\"(min-width: 768px)\" srcset=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-1024x601.png\">\n\t\t\t\t\t<img decoding=\"async\" class=\"spectra-image-gallery__media-thumbnail spectra-image-gallery__media-thumbnail--masonry\" src=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-300x176.png\" alt=\"Choosing API integration in PTC setup\" loading=\"lazy\" \/>\n\t\t\t\t<\/picture>\n\t\t\t\t<div class=\"spectra-image-gallery__media-thumbnail-blurrer\"><\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"spectra-image-gallery__media-thumbnail-caption-wrapper spectra-image-gallery__media-thumbnail-caption-wrapper--bar-outside\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"spectra-image-gallery__media-thumbnail-caption spectra-image-gallery__media-thumbnail-caption--bar-outside\">\n\t\t\t\t\tChoosing API Integration\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class='spectra-image-gallery__media-wrapper--isotope'>\n\t\t\t\t\t\t\t<div class='spectra-image-gallery__media-wrapper' data-spectra-gallery-image-id='17352' tabindex=\"0\">\n\t\t\t\t\t\t\t<div class=\"spectra-image-gallery__media spectra-image-gallery__media--masonry\">\n\t\t\t\t<picture>\n\t\t\t\t\t<source media=\"(min-width: 1024px)\" srcset=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-scaled.png\">\n\t\t\t\t\t<source media=\"(min-width: 768px)\" srcset=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-1024x459.png\">\n\t\t\t\t\t<img decoding=\"async\" class=\"spectra-image-gallery__media-thumbnail spectra-image-gallery__media-thumbnail--masonry\" src=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-300x135.png\" alt=\"API token under Settings \u2192 Manage API tokens\" loading=\"lazy\" \/>\n\t\t\t\t<\/picture>\n\t\t\t\t<div class=\"spectra-image-gallery__media-thumbnail-blurrer\"><\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"spectra-image-gallery__media-thumbnail-caption-wrapper spectra-image-gallery__media-thumbnail-caption-wrapper--bar-outside\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"spectra-image-gallery__media-thumbnail-caption spectra-image-gallery__media-thumbnail-caption--bar-outside\">\n\t\t\t\t\tAPI token under Settings \u2192 Manage API tokens\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class='spectra-image-gallery__control-lightbox' tabindex='0'>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper spectra-image-gallery__control-lightbox--main\" dir=\"\">\n\t\t\t\t\t<div class=\"swiper-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<div class=\"swiper-slide\">\n\t\t\t\t\t\t\t\t<img class=\"swiper-lazy\" data-src=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project.png\" alt=\"Creating a new project in PTC\"\/>\n\t\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader swiper-lazy-preloader-white\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<div class=\"swiper-slide\">\n\t\t\t\t\t\t\t\t<img class=\"swiper-lazy\" data-src=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration.png\" alt=\"Choosing API integration in PTC setup\"\/>\n\t\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader swiper-lazy-preloader-white\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<div class=\"swiper-slide\">\n\t\t\t\t\t\t\t\t<img class=\"swiper-lazy\" data-src=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-scaled.png\" alt=\"API token under Settings \u2192 Manage API tokens\"\/>\n\t\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader swiper-lazy-preloader-white\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"swiper-button-next\"><\/div>\n\t\t\t\t\t<div class=\"swiper-button-prev\"><\/div>\n\t\t\t\t<\/div>\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<button class='spectra-image-gallery__control-lightbox--close' aria-label=\"Close\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<svg xmlns=\"https:\/\/www.w3.org\/2000\/svg\" viewBox= \"0 0 320 512\"><path d=\"M310.6 361.4c12.5 12.5 12.5 32.75 0 45.25C304.4 412.9 296.2 416 288 416s-16.38-3.125-22.62-9.375L160 301.3L54.63 406.6C48.38 412.9 40.19 416 32 416S15.63 412.9 9.375 406.6c-12.5-12.5-12.5-32.75 0-45.25l105.4-105.4L9.375 150.6c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0L160 210.8l105.4-105.4c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25l-105.4 105.4L310.6 361.4z\"><\/path><\/svg>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/button>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"api-endpoints\">Endpoints de la API para traducir contenido din\u00e1mico<\/h2>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-uagb-container uagb-block-5fd536df alignfull uagb-is-root-container\"><div class=\"uagb-container-inner-blocks-wrap\">\n<div class=\"wp-block-uagb-container uagb-block-d8efc734\">\n<div class=\"wp-block-uagb-advanced-heading uagb-block-4a10c111\"><p class=\"uagb-heading-text\">1<\/p><\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"send-content-for-translation\">Enviar contenido para traducir<\/h3>\n<\/div><\/div>\n\n\n\n<p>Para traducir contenido, utilice el endpoint <a href=\"https:\/\/ptc.wpml.org\/es\/documentation\/referencia-de-la-api-de-ptc\/solicite-y-recupere-traducciones-a-traves-de-la-api\/#create-content-translations\">Create Content Translation<\/a>. Esto programa su contenido para su traducci\u00f3n y devuelve un ID que usar\u00e1 para hacer seguimiento del progreso y recuperar los resultados. <\/p>\n\n\n\n<p><strong>Endpoint<\/strong>:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>POST https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #88C0D0\">POST<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Par\u00e1metros<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>data<\/code>  (obligatorio) &#8211; El contenido que se va a traducir como un hash<\/li>\n\n\n\n<li><code>name<\/code>  (obligatorio) &#8211; Una etiqueta para este trabajo de traducci\u00f3n (por ejemplo, <code>\"post-123-translation\"<\/code>)<\/li>\n\n\n\n<li><code>target_languages<\/code>  (opcional) &#8211; Una matriz de c\u00f3digos de idioma (por ejemplo, <code>[\"es\", \"fr\", \"de\"]<\/code>)<\/li>\n\n\n\n<li><code>callback_url<\/code>  (opcional) &#8211; Una URL donde PTC le notificar\u00e1 cuando las traducciones est\u00e9n<\/li>\n<\/ul>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Aqu\u00ed tiene un ejemplo de servicio que inicia la traducci\u00f3n:<\/strong><\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#39404f;color:#c8d0e0\">Ruby<\/span><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>require 'net\/http'\nrequire 'uri'\n\nmodule Ptc\n class TranslateService\n def initialize(data:, name: ,target_languages:, callback_url: nil)\n @data = data\n @name = name\n @target_languages = target_languages\n @token = ENV.fetch(\"PTC_API_TOKEN\")\n @callback_url = callback_url\n end\n\n  def call\n translate\n end\n\n  def self.call(**attributes)\n new(**attributes).call\n end\n\n  private\n attr_reader :data, :name, :target_languages, :token, :callback_url\n\n  def translate\n response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|\n http.request(request)\n end\n JSON.parse(response.body)\n end\n\n  def body\n {\n data:,\n name:,\n target_languages:,\n callback_url:,\n }.to_json\n end\n\n  def request\n return @request if @request.present?\n\n  @request ||= Net::HTTP::Post.new(uri)\n @request.content_type = \"application\/json\"\n @request.body = body\n @request[\"Authorization\"] = \"Bearer #{token}\"\n @request\n end\n\n  def uri\n @uri ||= URI.parse(\"https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation\")\n end\n end\nend\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">require<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">'<\/span><span style=\"color: #A3BE8C\">net\/http<\/span><span style=\"color: #ECEFF4\">'<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">require<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">'<\/span><span style=\"color: #A3BE8C\">uri<\/span><span style=\"color: #ECEFF4\">'<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> Ptc<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">class<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">TranslateService<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">initialize<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">data<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">, name<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> ,target_languages<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">, callback_url<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">nil<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> data<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">name<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> name<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">target_languages<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> target_languages<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">token<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">ENV<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">fetch<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">PTC_API_TOKEN<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">callback_url<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> callback_url<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">call<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      translate<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">self.call<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #81A1C1\">**<\/span><span style=\"color: #D8DEE9FF\">attributes<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">new<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #81A1C1\">**<\/span><span style=\"color: #D8DEE9FF\">attributes<\/span><span style=\"color: #ECEFF4\">).<\/span><span style=\"color: #D8DEE9FF\">call<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">private<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">attr_reader<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">data<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">name<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">target_languages<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">token<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">callback_url<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">translate<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      response <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Net<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">HTTP<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">start<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">uri<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">hostname<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> uri<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">port<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> use_ssl<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">true<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">do<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">|<\/span><span style=\"color: #D8DEE9\">http<\/span><span style=\"color: #ECEFF4\">|<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        http<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">request<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">request<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #8FBCBB\">JSON<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">parse<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">response<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">body<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">body<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        data<\/span><span style=\"color: #ECEFF4\">:,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        name<\/span><span style=\"color: #ECEFF4\">:,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        target_languages<\/span><span style=\"color: #ECEFF4\">:,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        callback_url<\/span><span style=\"color: #ECEFF4\">:,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #ECEFF4\">}.<\/span><span style=\"color: #D8DEE9FF\">to_json<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">request<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">return<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">present?<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">||=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Net<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">HTTP<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">Post<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #81A1C1\">new<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">uri<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">content_type <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">application\/json<\/span><span style=\"color: #ECEFF4\">\"<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">body <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> body<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">[<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">Authorization<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">]<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">Bearer <\/span><span style=\"color: #81A1C1\">#{<\/span><span style=\"color: #A3BE8C\">token<\/span><span style=\"color: #81A1C1\">}<\/span><span style=\"color: #ECEFF4\">\"<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">uri<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">uri<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">||=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">URI<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">parse<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/><\/code><\/pre><\/div>\n\n\n\n<div class=\"wp-block-uagb-container uagb-block-a2ef876d alignfull uagb-is-root-container\"><div class=\"uagb-container-inner-blocks-wrap\">\n<p>Para ver los detalles completos de la respuesta, los c\u00f3digos de error y ejemplos adicionales, consulte la <a href=\"https:\/\/ptc.wpml.org\/es\/documentation\/referencia-de-la-api-de-ptc\/solicite-y-recupere-traducciones-a-traves-de-la-api\/#create-content-translations\">documentaci\u00f3n de la API Create Content Translation<\/a>.<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-uagb-container uagb-block-603527d0 alignfull uagb-is-root-container\"><div class=\"uagb-container-inner-blocks-wrap\">\n<div class=\"wp-block-uagb-container uagb-block-c1b6d94c\">\n<div class=\"wp-block-uagb-advanced-heading uagb-block-68e36a9a\"><p class=\"uagb-heading-text\">2<\/p><\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"check-the-translation-status\">Comprobar el estado de la traducci\u00f3n<\/h3>\n<\/div><\/div>\n\n\n\n<p id=\"h-your-attractive-heading\">Para comprobar si su traducci\u00f3n est\u00e1 completa, utilice el endpoint <a href=\"https:\/\/ptc.wpml.org\/es\/documentation\/referencia-de-la-api-de-ptc\/solicite-y-recupere-traducciones-a-traves-de-la-api\/#get-content-translation-status\">Get Content Translation Status<\/a>. Este devuelve el estado actual y el progreso de la traducci\u00f3n. <\/p>\n\n\n\n<p id=\"h-your-attractive-heading\"><strong>Endpoint<\/strong>:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>GET https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation\/{id}\/status<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #88C0D0\">GET<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation\/{id}\/status<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Par\u00e1metros<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>id<\/code>  (obligatorio) &#8211; El identificador \u00fanico del trabajo de traducci\u00f3n de contenido que se va a comprobar<\/li>\n<\/ul>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Ejemplo de servicio en Rails:<\/strong><\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#39404f;color:#c8d0e0\">Ruby<\/span><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>require 'net\/http'\nrequire 'uri'\n\nmodule Ptc\n class GetTranslationStatusService\n def initialize(id:)\n @id = id\n @token = ENV.fetch(\"PTC_API_TOKEN\")\n end\n\n  def call\n get\n end\n\n  def self.call(**attributes)\n new(**attributes).call\n end\n\n  private\n attr_reader :id, :token\n\n  def get\n response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|\n http.request(request)\n end\n JSON.parse(response.body)\n end\n\n  def request\n return @request if @request.present?\n\n  @request ||= Net::HTTP::Get.new(uri)\n @request.content_type = \"application\/json\"\n @request[\"Authorization\"] = \"Bearer #{token}\"\n @request\n end\n\n  def uri\n @uri ||= URI.parse(\"https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation\/#{id}\/status\")\n end\n end\nend\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">require<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">'<\/span><span style=\"color: #A3BE8C\">net\/http<\/span><span style=\"color: #ECEFF4\">'<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">require<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">'<\/span><span style=\"color: #A3BE8C\">uri<\/span><span style=\"color: #ECEFF4\">'<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> Ptc<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">class<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">GetTranslationStatusService<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">initialize<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">:)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">id<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> id<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">token<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">ENV<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">fetch<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">PTC_API_TOKEN<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">call<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      get<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">self.call<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #81A1C1\">**<\/span><span style=\"color: #D8DEE9FF\">attributes<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">new<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #81A1C1\">**<\/span><span style=\"color: #D8DEE9FF\">attributes<\/span><span style=\"color: #ECEFF4\">).<\/span><span style=\"color: #D8DEE9FF\">call<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">private<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">attr_reader<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">token<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">get<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      response <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Net<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">HTTP<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">start<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">uri<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">hostname<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> uri<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">port<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> use_ssl<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">true<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">do<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">|<\/span><span style=\"color: #D8DEE9\">http<\/span><span style=\"color: #ECEFF4\">|<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        http<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">request<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">request<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #8FBCBB\">JSON<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">parse<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">response<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">body<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">request<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">return<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">present?<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">||=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Net<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">HTTP<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">Get<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #81A1C1\">new<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">uri<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">content_type <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">application\/json<\/span><span style=\"color: #ECEFF4\">\"<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">[<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">Authorization<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">]<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">Bearer <\/span><span style=\"color: #81A1C1\">#{<\/span><span style=\"color: #A3BE8C\">token<\/span><span style=\"color: #81A1C1\">}<\/span><span style=\"color: #ECEFF4\">\"<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">uri<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">uri<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">||=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">URI<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">parse<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation\/<\/span><span style=\"color: #81A1C1\">#{<\/span><span style=\"color: #A3BE8C\">id<\/span><span style=\"color: #81A1C1\">}<\/span><span style=\"color: #A3BE8C\">\/status<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-uagb-container uagb-block-70d21a2f alignfull uagb-is-root-container\"><div class=\"uagb-container-inner-blocks-wrap\">\n<p>La respuesta incluye un campo de estado y un porcentaje que muestra el progreso de la traducci\u00f3n. Para ver los detalles completos de la respuesta, consulte la <a href=\"https:\/\/ptc.wpml.org\/es\/documentation\/referencia-de-la-api-de-ptc\/solicite-y-recupere-traducciones-a-traves-de-la-api\/#get-content-translation-status\">documentaci\u00f3n de la API Get Content Translation<\/a>. <\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-uagb-container uagb-block-3b93f13f alignfull uagb-is-root-container\"><div class=\"uagb-container-inner-blocks-wrap\">\n<div class=\"wp-block-uagb-container uagb-block-1883f0e0\">\n<div class=\"wp-block-uagb-advanced-heading uagb-block-357159f5\"><p class=\"uagb-heading-text\">3<\/p><\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"retrieve-translations\">Recuperar traducciones<\/h3>\n<\/div><\/div>\n\n\n\n<p>Una vez que su traducci\u00f3n est\u00e9 completa, utilice el endpoint <a href=\"https:\/\/ptc.wpml.org\/es\/documentation\/referencia-de-la-api-de-ptc\/solicite-y-recupere-traducciones-a-traves-de-la-api\/#get-content-translation-status\">Get Content Translations<\/a> para obtener los resultados. Este devuelve su contenido original m\u00e1s las versiones traducidas para cada idioma de destino. <\/p>\n\n\n\n<p><strong>Endpoint<\/strong>:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>GET https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation\/{id}<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #88C0D0\">GET<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation\/{id}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>Par\u00e1metros<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>id<\/code><strong> <\/strong>(obligatorio) &#8211; El identificador \u00fanico del trabajo de traducci\u00f3n de contenido que se va a recuperar<\/li>\n<\/ul>\n\n\n\n<p><strong>Ejemplo en Rails:<\/strong><\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#39404f;color:#c8d0e0\">Ruby<\/span><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>require 'net\/http'\nrequire 'uri'\n\nmodule Ptc\n class GetTranslationService\n def initialize(id:)\n @id = id\n @token = ENV.fetch(\"PTC_API_TOKEN\")\n end\n\n  def call\n get\n end\n\n  def self.call(**attributes)\n new(**attributes).call\n end\n\n  private\n attr_reader :id, :token\n\n  def get\n response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|\n http.request(request)\n end\n JSON.parse(response.body)\n end\n\n  def request\n return @request if @request.present?\n\n  @request ||= Net::HTTP::Get.new(uri)\n @request.content_type = \"application\/json\"\n @request[\"Authorization\"] = \"Bearer #{token}\"\n @request\n end\n\n  def uri\n @uri ||= URI.parse(\"https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation\/#{id}\")\n end\n end\nend\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">require<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">'<\/span><span style=\"color: #A3BE8C\">net\/http<\/span><span style=\"color: #ECEFF4\">'<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">require<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">'<\/span><span style=\"color: #A3BE8C\">uri<\/span><span style=\"color: #ECEFF4\">'<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> Ptc<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">class<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">GetTranslationService<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">initialize<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">:)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">id<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> id<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">token<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">ENV<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">fetch<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">PTC_API_TOKEN<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">call<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      get<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">self.call<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #81A1C1\">**<\/span><span style=\"color: #D8DEE9FF\">attributes<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">new<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #81A1C1\">**<\/span><span style=\"color: #D8DEE9FF\">attributes<\/span><span style=\"color: #ECEFF4\">).<\/span><span style=\"color: #D8DEE9FF\">call<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">private<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">attr_reader<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">token<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">get<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      response <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Net<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">HTTP<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">start<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">uri<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">hostname<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> uri<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">port<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> use_ssl<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">true<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">do<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">|<\/span><span style=\"color: #D8DEE9\">http<\/span><span style=\"color: #ECEFF4\">|<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        http<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">request<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">request<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #8FBCBB\">JSON<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">parse<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">response<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">body<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">request<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">return<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">present?<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">||=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Net<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">HTTP<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">Get<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #81A1C1\">new<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">uri<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">content_type <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">application\/json<\/span><span style=\"color: #ECEFF4\">\"<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><span style=\"color: #ECEFF4\">[<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">Authorization<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">]<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">Bearer <\/span><span style=\"color: #81A1C1\">#{<\/span><span style=\"color: #A3BE8C\">token<\/span><span style=\"color: #81A1C1\">}<\/span><span style=\"color: #ECEFF4\">\"<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">request<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">uri<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">uri<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">||=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">URI<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">parse<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">https:\/\/app.ptc.wpml.org\/api\/v1\/content_translation\/<\/span><span style=\"color: #81A1C1\">#{<\/span><span style=\"color: #A3BE8C\">id<\/span><span style=\"color: #81A1C1\">}<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"get-notified-when-translations-are-ready\">Reciba una notificaci\u00f3n cuando las traducciones est\u00e9n listas<\/h2>\n\n\n\n<p>Ha aprendido a enviar contenido, comprobar el estado y recuperar traducciones. Ahora necesita conectar estos pasos para que su aplicaci\u00f3n sepa autom\u00e1ticamente cu\u00e1ndo obtener las traducciones. <\/p>\n\n\n\n<p>Puede hacerlo usando callbacks (recomendado) o ejecutando un trabajo que sondee el estado de la traducci\u00f3n.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"using-callbacks\">Uso de callbacks (recomendado)<\/h3>\n\n\n\n<p id=\"h-\">Cuando env\u00eda contenido para traducir, puede incluir una URL de callback. PTC llama a esta URL cuando la traducci\u00f3n se completa. A continuaci\u00f3n, su endpoint obtiene y almacena las traducciones.    <\/p>\n\n\n\n<p id=\"h-\">Esto es eficiente porque PTC le notifica de inmediato.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#39404f;color:#c8d0e0\">Ruby<\/span><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>module Api\n class CallbacksController &lt; ActionController::API\n before_action :set_post\n\n  def create\n id = callback_params[:id]\n\n  translation_data = Ptc::GetTranslationService.call(id:)\n translation_data.except(\"source\").each do |locale, data|\n @post.set_translation(locale:, title: data[\"title\"], description: data[\"description\"])\n end\n\n  head :ok\n end\n\n  private\n\n  def set_post\n @post = Post.find(params[:post_id])\n end\n\n  def callback_params\n params.permit([:post_id, :id, :status, :translations_url])\n end\n end\nend\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">module<\/span><span style=\"color: #D8DEE9FF\"> Api<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">class<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">CallbacksController<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">&lt;<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB; font-weight: bold\">ActionController::API<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    before_action <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">set_post<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">create<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      id <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> callback_params<\/span><span style=\"color: #ECEFF4\">[:<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">]<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      translation_data <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Ptc<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">GetTranslationService<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">call<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">:)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      translation_data<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">except<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">source<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">).<\/span><span style=\"color: #D8DEE9FF\">each <\/span><span style=\"color: #81A1C1\">do<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">|<\/span><span style=\"color: #D8DEE9\">locale<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #ECEFF4\">|<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">post<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">set_translation<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">locale<\/span><span style=\"color: #ECEFF4\">:,<\/span><span style=\"color: #D8DEE9FF\"> title<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> data<\/span><span style=\"color: #ECEFF4\">[<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">title<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">],<\/span><span style=\"color: #D8DEE9FF\"> description<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> data<\/span><span style=\"color: #ECEFF4\">[<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">description<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">])<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      head <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">ok<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">private<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">set_post<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">@<\/span><span style=\"color: #D8DEE9\">post<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Post<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">find<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">params<\/span><span style=\"color: #ECEFF4\">[:<\/span><span style=\"color: #D8DEE9FF\">post_id<\/span><span style=\"color: #ECEFF4\">])<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">callback_params<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      params<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">permit<\/span><span style=\"color: #ECEFF4\">([:<\/span><span style=\"color: #D8DEE9FF\">post_id<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">status<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">translations_url<\/span><span style=\"color: #ECEFF4\">])<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"polling-the-translation-status\">Sondeo del estado de la traducci\u00f3n (alternativa)<\/h3>\n\n\n\n<p id=\"h-\">\u00bfNo puede usar callbacks? Despu\u00e9s de enviar contenido para traducir, puede poner en cola un trabajo en segundo plano que compruebe repetidamente el estado de la traducci\u00f3n. El trabajo obtiene las traducciones cuando se completan.    <\/p>\n\n\n\n<p id=\"h-\">Este enfoque no se recomienda porque desperdicia recursos y a\u00f1ade llamadas a la API innecesarias.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#39404f;color:#c8d0e0\">Ruby<\/span><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>class CheckTranslationJob &lt; ApplicationJob\n\n  MAX_ATTEMPTS = 3\n\n  def perform(id:, post_id:, attempt: 0)\n translation = Ptc::GetTranslationStatusService.call(id:)\n if translation[\"status\"] == \"completed\"\n translation = Ptc::GetTranslationService.call(id:)\n post = Post.find(post_id)\n translation.except(\"source\").each do |locale, data|\n post.set_translation(locale:, title: data[\"title\"], description: data[\"description\"])\n end\n else\n raise \"Failed to get translation after #{MAX_ATTEMPTS} attempts\" if attempt &gt; MAX_ATTEMPTS\n\n  CheckTranslationJob.set(wait: 1.minute).perform_later(id:, post_id:, attempt: attempt + 1)\n end\n end\nend\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">class<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">CheckTranslationJob<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">&lt;<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB; font-weight: bold\">ApplicationJob<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #D8DEE9\">MAX_ATTEMPTS<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">3<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">perform<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">, post_id<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\">, attempt<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    translation <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Ptc<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">GetTranslationStatusService<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">call<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">:)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> translation<\/span><span style=\"color: #ECEFF4\">[<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">status<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">]<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">==<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">completed<\/span><span style=\"color: #ECEFF4\">\"<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      translation <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Ptc<\/span><span style=\"color: #ECEFF4\">::<\/span><span style=\"color: #8FBCBB\">GetTranslationService<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">call<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">:)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      post <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Post<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">find<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">post_id<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      translation<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">except<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">source<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">).<\/span><span style=\"color: #D8DEE9FF\">each <\/span><span style=\"color: #81A1C1\">do<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">|<\/span><span style=\"color: #D8DEE9\">locale<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #ECEFF4\">|<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        post<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">set_translation<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">locale<\/span><span style=\"color: #ECEFF4\">:,<\/span><span style=\"color: #D8DEE9FF\"> title<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> data<\/span><span style=\"color: #ECEFF4\">[<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">title<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">],<\/span><span style=\"color: #D8DEE9FF\"> description<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> data<\/span><span style=\"color: #ECEFF4\">[<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">description<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #ECEFF4\">])<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">else<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">raise<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #A3BE8C\">Failed to get translation after <\/span><span style=\"color: #81A1C1\">#{<\/span><span style=\"color: #D8DEE9\">MAX_ATTEMPTS<\/span><span style=\"color: #81A1C1\">}<\/span><span style=\"color: #A3BE8C\"> attempts<\/span><span style=\"color: #ECEFF4\">\"<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> attempt <\/span><span style=\"color: #81A1C1\">&gt;<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">MAX_ATTEMPTS<\/span><\/span>\n<span class=\"line\"\/>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #8FBCBB\">CheckTranslationJob<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">set<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">wait<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">minute<\/span><span style=\"color: #ECEFF4\">).<\/span><span style=\"color: #D8DEE9FF\">perform_later<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">id<\/span><span style=\"color: #ECEFF4\">:,<\/span><span style=\"color: #D8DEE9FF\"> post_id<\/span><span style=\"color: #ECEFF4\">:,<\/span><span style=\"color: #D8DEE9FF\"> attempt<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #D8DEE9FF\"> attempt <\/span><span style=\"color: #81A1C1\">+<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1<\/span><span style=\"color: #ECEFF4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">end<\/span><\/span>\n<span class=\"line\"\/><\/code><\/pre><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-uagb-container uagb-block-4f13cfc4\">\n<div class=\"wp-block-uagb-advanced-heading uagb-block-bd69da8b\"><h3 class=\"uagb-heading-text\"><strong><strong>Empiece a traducir su aplicaci\u00f3n Rails<\/strong><\/strong><\/h3><\/div>\n\n\n\n<div class=\"wp-block-uagb-advanced-heading uagb-block-bb9e78d5\"><p class=\"uagb-heading-text\">Ahora ya tiene todo lo que necesita para integrar la API de traducci\u00f3n de PTC. Cree una cuenta gratuita y traduzca 20.000 palabras a 2 idiomas sin coste. <\/p><\/div>\n\n\n\n<div class=\"wp-block-uagb-buttons uagb-buttons__outer-wrap uagb-btn__default-btn uagb-btn-tablet__default-btn uagb-btn-mobile__default-btn uagb-block-b69278b3\"><div class=\"uagb-buttons__wrap uagb-buttons-layout-wrap \">\n<div class=\"wp-block-uagb-buttons-child uagb-buttons__outer-wrap uagb-block-bdaafad6 wp-block-button\"><div class=\"uagb-button__wrapper\"><a class=\"uagb-buttons-repeater wp-block-button__link\" aria-label=\"\" href=\"https:\/\/app.ptc.wpml.org\/users\/sign_up\" rel=\"follow noopener\" target=\"_self\" role=\"button\"><div class=\"uagb-button__link\">Empiece su prueba gratuita<\/div><\/a><\/div><\/div>\n<\/div><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-uagb-container otp uag-hide-tab uag-hide-mob uagb-layout-flex uagb-block-e306e24e\">\n<div class=\"wp-block-uagb-advanced-heading uagb-block-a4c24409\"><p class=\"uagb-heading-text\">En esta p\u00e1gina<\/p><\/div>\n\n\n\n<div class=\"wp-block-uagb-advanced-heading uagb-block-889b1ee5\"><p class=\"uagb-heading-text\"><a href=\"#how-to-translate-po-files\"><\/a><a href=\"#before-starting\">Antes de empezar<\/a><\/p><\/div>\n\n\n\n<div class=\"wp-block-uagb-advanced-heading uagb-block-c8ed9511\"><p class=\"uagb-heading-text\"><a href=\"#how-to-translate-po-files\"><\/a><a href=\"#set-up-ptc\">Configure PTC y obtenga su token de API<\/a><\/p><\/div>\n\n\n\n<div class=\"wp-block-uagb-advanced-heading uagb-block-99e44a2f\"><p class=\"uagb-heading-text\"><a href=\"#how-to-translate-po-files\"><\/a><a href=\"https:\/\/docs.google.com\/document\/d\/1Pf6zHD8PljDenGlcoat-gIKtTLJigYTMLjUXq-KRfQg\/edit?tab=t.c6wjtl4b5e0j#heading=h.tykax22wh0u\"><\/a><a href=\"#api-endpoints\">Endpoints de la API para traducir contenido din\u00e1mico<br\/><\/a><\/p><\/div>\n\n\n\n<div class=\"wp-block-uagb-container uagb-block-fabb3c95\">\n<div class=\"wp-block-uagb-advanced-heading uagb-block-83f5f89c\"><p class=\"uagb-heading-text\"><a href=\"#send-content-for-translation\">Enviar contenido para traducir<\/a><\/p><\/div>\n\n\n\n<div class=\"wp-block-uagb-advanced-heading uagb-block-6e2782c9\"><p class=\"uagb-heading-text\"><a href=\"#check-the-translation-status\">Comprobar el estado de la traducci\u00f3n<\/a><\/p><\/div>\n\n\n\n<div class=\"wp-block-uagb-advanced-heading uagb-block-f18e849a\"><p class=\"uagb-heading-text\"><a href=\"#retrieve-translations\">Recuperar traducciones<\/a><\/p><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-uagb-advanced-heading uagb-block-a02fa26b\"><p class=\"uagb-heading-text\"><a href=\"#get-notified-when-translations-are-ready\">Reciba una notificaci\u00f3n cuando las traducciones est\u00e9n listas<\/a><\/p><\/div>\n\n\n\n<div class=\"wp-block-uagb-container uagb-block-cc0cd036\">\n<div class=\"wp-block-uagb-advanced-heading uagb-block-505f6771\"><p class=\"uagb-heading-text\"><a href=\"#using-callbacks\">Uso de callbacks (recomendado)<\/a><\/p><\/div>\n\n\n\n<div class=\"wp-block-uagb-advanced-heading uagb-block-dec77b8e\"><p class=\"uagb-heading-text\"><a href=\"#polling-the-translation-status\">Sondeo del estado de la traducci\u00f3n (alternativa)<\/a><\/p><\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR). Esto incluye entradas del blog, informaci\u00f3n de productos y cualquier texto almacenado en su base de datos. A continuaci\u00f3n, le guiaremos por el proceso de traducci\u00f3n de contenido din\u00e1mico en aplicaciones Rails en dos partes: Antes de empezar Esta gu\u00eda asume que [&hellip;]<\/p>\n","protected":false},"parent":0,"menu_order":24,"template":"","meta":{"_acf_changed":false,"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"normal-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}}},"resources":[40],"class_list":["post-17357","documentation","type-documentation","status-publish","hentry","resources-guias-para-desarrolladores"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.4 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>C\u00f3mo traducir contenido din\u00e1mico en Rails con la API de PTC - PTC<\/title>\n<meta name=\"description\" content=\"Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR).\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C\u00f3mo traducir contenido din\u00e1mico en Rails con la API de PTC\" \/>\n<meta property=\"og:description\" content=\"Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR).\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/\" \/>\n<meta property=\"og:site_name\" content=\"PTC\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-20T09:56:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-featured-site-image.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/documentation\\\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\\\/\",\"url\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/documentation\\\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\\\/\",\"name\":\"C\u00f3mo traducir contenido din\u00e1mico en Rails con la API de PTC - PTC\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/#website\"},\"datePublished\":\"2026-01-22T10:05:25+00:00\",\"dateModified\":\"2026-03-20T09:56:42+00:00\",\"description\":\"Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR).\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/documentation\\\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\\\/#breadcrumb\"},\"inLanguage\":\"es-ES\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/documentation\\\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/documentation\\\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Inicio\",\"item\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/pagina-principal\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Documentaci\u00f3n\",\"item\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/documentation\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"C\u00f3mo traducir contenido din\u00e1mico en Rails con la API de PTC\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/\",\"name\":\"PTC\",\"description\":\"Private Translation Cloud\",\"publisher\":{\"@id\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es-ES\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/#organization\",\"name\":\"PTC\",\"url\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es-ES\",\"@id\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/ptc.wpml.org\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/logo-light.svg\",\"contentUrl\":\"https:\\\/\\\/ptc.wpml.org\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/logo-light.svg\",\"width\":300,\"height\":139,\"caption\":\"PTC\"},\"image\":{\"@id\":\"https:\\\/\\\/ptc.wpml.org\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"C\u00f3mo traducir contenido din\u00e1mico en Rails con la API de PTC - PTC","description":"Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR).","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/","og_locale":"es_ES","og_type":"article","og_title":"C\u00f3mo traducir contenido din\u00e1mico en Rails con la API de PTC","og_description":"Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR).","og_url":"https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/","og_site_name":"PTC","article_modified_time":"2026-03-20T09:56:42+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-featured-site-image.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/","url":"https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/","name":"C\u00f3mo traducir contenido din\u00e1mico en Rails con la API de PTC - PTC","isPartOf":{"@id":"https:\/\/ptc.wpml.org\/es\/#website"},"datePublished":"2026-01-22T10:05:25+00:00","dateModified":"2026-03-20T09:56:42+00:00","description":"Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR).","breadcrumb":{"@id":"https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/#breadcrumb"},"inLanguage":"es-ES","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/ptc.wpml.org\/es\/documentation\/como-traducir-contenido-dinamico-en-rails-usando-la-api-de-ptc\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Inicio","item":"https:\/\/ptc.wpml.org\/es\/pagina-principal\/"},{"@type":"ListItem","position":2,"name":"Documentaci\u00f3n","item":"https:\/\/ptc.wpml.org\/es\/documentation\/"},{"@type":"ListItem","position":3,"name":"C\u00f3mo traducir contenido din\u00e1mico en Rails con la API de PTC"}]},{"@type":"WebSite","@id":"https:\/\/ptc.wpml.org\/es\/#website","url":"https:\/\/ptc.wpml.org\/es\/","name":"PTC","description":"Private Translation Cloud","publisher":{"@id":"https:\/\/ptc.wpml.org\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ptc.wpml.org\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es-ES"},{"@type":"Organization","@id":"https:\/\/ptc.wpml.org\/es\/#organization","name":"PTC","url":"https:\/\/ptc.wpml.org\/es\/","logo":{"@type":"ImageObject","inLanguage":"es-ES","@id":"https:\/\/ptc.wpml.org\/es\/#\/schema\/logo\/image\/","url":"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2023\/11\/logo-light.svg","contentUrl":"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2023\/11\/logo-light.svg","width":300,"height":139,"caption":"PTC"},"image":{"@id":"https:\/\/ptc.wpml.org\/es\/#\/schema\/logo\/image\/"}}]}},"spectra_custom_meta":{"_wpv_contains_gutenberg_views":[""],"ast-main-header-display":[""],"ast-hfb-above-header-display":[""],"ast-hfb-below-header-display":[""],"ast-hfb-mobile-header-display":[""],"adv-header-id-meta":[""],"footer-sml-layout":[""],"stick-header-meta":[""],"header-main-stick-meta":[""],"header-above-stick-meta":[""],"header-below-stick-meta":[""],"site-post-title":[""],"site-sidebar-layout":["default"],"site-content-layout":[""],"ast-featured-img":[""],"ast-breadcrumbs-content":[""],"theme-transparent-header-meta":[""],"ast-banner-title-visibility":[""],"ast-global-header-display":[""],"ast-site-content-layout":["normal-width-container"],"site-content-style":["default"],"site-sidebar-style":["default"],"_top_nav_excluded":[""],"_cms_nav_minihome":[""],"_wp_page_template":["default"],"_yoast_indexnow_last_ping":["1769076469"],"_last_translation_edit_mode":["translation-editor"],"_wpml_word_count":["1803"],"_yoast_wpseo_metadesc":["Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR)."],"cmplz_hide_cookiebanner":[""],"wpcf-order":["1"],"_uag_page_assets":["a:9:{s:3:\"css\";s:73656:\".wp-block-uagb-container.uagb-block-7d0a9c8b .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-7d0a9c8b .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-7d0a9c8b .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-7d0a9c8b .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-7d0a9c8b .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-7d0a9c8b{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-7d0a9c8b{box-shadow: 0px 0px   #00000070 ;padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top: 64px !important;margin-bottom: 0px !important;margin-left: 0px !important;margin-right: 0px !important;overflow: visible;order: initial;border-color: inherit;flex-direction: row;align-items: flex-start;justify-content: center;flex-wrap: nowrap;row-gap: 0px;column-gap: 64px;max-width: 100% !important;}.wp-block-uagb-container.uagb-block-ec2c2fb6 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-ec2c2fb6 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-ec2c2fb6 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-ec2c2fb6 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-ec2c2fb6 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-ec2c2fb6{max-width: 75%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-ec2c2fb6 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: flex-start;flex-wrap: nowrap;row-gap: 0px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-ec2c2fb6{box-shadow: 0px 0px   #00000070 ;padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;flex-direction: column;align-items: center;justify-content: flex-start;flex-wrap: nowrap;row-gap: 0px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-480d8777 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-480d8777 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-480d8777 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-480d8777 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-480d8777 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-480d8777{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-480d8777{box-shadow: 0px 0px   #00000070 ;padding-top: 40px;padding-bottom: 40px;padding-left: 40px;padding-right: 40px;margin-top: 0px !important;margin-bottom: 36px !important;margin-left: 0px !important;margin-right: 0px !important;overflow: visible;order: initial;border-top-left-radius: 20px;border-top-right-radius: 20px;border-bottom-left-radius: 20px;border-bottom-right-radius: 20px;border-style: none;border-color: inherit;background-color: rgba(205,189,226,0.1);;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 0px;column-gap: 0px;max-width: 100% !important;}.uagb-block-60bbf702.wp-block-uagb-buttons.uagb-buttons__outer-wrap .uagb-buttons__wrap {gap: 10px;}.uagb-block-60bbf702.uagb-buttons__outer-wrap .uagb-buttons__wrap {justify-content: left;align-items: center;}.wp-block-uagb-buttons .uagb-block-5ea4a834 .uagb-button__wrapper  .uagb-buttons-repeater.wp-block-button__link{box-shadow: 0px 0px 0 #00000026;}.wp-block-uagb-buttons .uagb-block-5ea4a834 .uagb-button__wrapper  .uagb-buttons-repeater.wp-block-button__link:hover{box-shadow: 0px 0px 0 #00000026;}.wp-block-uagb-buttons .uagb-block-5ea4a834 .uagb-buttons-repeater.wp-block-button__link:hover{border-color: #333;}.wp-block-uagb-buttons .uagb-block-5ea4a834 .uagb-buttons-repeater.wp-block-button__link:focus{border-color: #333;}.wp-block-uagb-buttons .uagb-block-5ea4a834.wp-block-button.is-style-outline .uagb-button__wrapper .wp-block-button__link.uagb-buttons-repeater:hover{border-color: #333;}.wp-block-uagb-buttons .uagb-block-5ea4a834 .uagb-buttons-repeater .uagb-button__icon > svg{width: 15px;height: 15px;}.wp-block-uagb-buttons .uagb-block-5ea4a834 .uagb-buttons-repeater .uagb-button__icon-position-after{margin-left: 8px;}.wp-block-uagb-buttons .uagb-block-5ea4a834 .uagb-buttons-repeater .uagb-button__icon-position-before{margin-right: 8px;}.wp-block-uagb-buttons .uagb-block-5ea4a834 .uagb-button__link{text-transform: normal;text-decoration: none;}.uagb-block-39ff3b72.wp-block-uagb-image-gallery{padding:    ;visibility: hidden;}.uagb-block-39ff3b72 .spectra-image-gallery__control-arrows svg{fill: #007cba;}.uagb-block-39ff3b72 .spectra-image-gallery__control-arrows--carousel{border-top-left-radius: 50px;border-top-right-radius: 50px;border-bottom-left-radius: 50px;border-bottom-right-radius: 50px;border-style: none;}.uagb-block-39ff3b72 .spectra-image-gallery__control-arrows--carousel.slick-prev{left: -24px;}.uagb-block-39ff3b72 .spectra-image-gallery__control-arrows--carousel.slick-next{right: -24px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel ul.slick-dots{top: 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel ul.slick-dots li button:before{color: #007cba;}.uagb-block-39ff3b72 .spectra-image-gallery__control-dots li button::before{color: #007cba;}.uagb-block-39ff3b72 .spectra-image-gallery__control-loader{margin-top: 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__control-loader div{width: 18px;height: 18px;border-radius: 100%;padding: 0;}.uagb-block-39ff3b72 .spectra-image-gallery__control-button{margin-top: 8px;padding:    ;font-style: normal;text-decoration: none;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--grid{grid-gap: 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--isogrid{margin: -4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--isogrid .spectra-image-gallery__media-wrapper--isotope{padding: 4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--masonry{margin: -4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--masonry .spectra-image-gallery__media-wrapper--isotope{padding: 4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel{margin-bottom: 8px !important;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel .spectra-image-gallery__media-wrapper{padding: 0px 4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel .slick-list{margin: 0px -4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--tiled{grid-gap: 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__media{border-top-left-radius: 20px;border-top-right-radius: 20px;border-bottom-left-radius: 20px;border-bottom-right-radius: 20px;border-color: rgba(206,191,227,0.18);box-shadow: 0px 0px   ;}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:hover .spectra-image-gallery__media{box-shadow: 0px 0px   ;}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:focus-visible .spectra-image-gallery__media{box-shadow: 0px 0px   ;}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-blurrer{-webkit-backdrop-filter: none;backdrop-filter: none;box-shadow: 0 0 transparent;}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:hover .spectra-image-gallery__media-thumbnail-blurrer{-webkit-backdrop-filter: none;backdrop-filter: none;box-shadow: 0 0 transparent;}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:focus-visible .spectra-image-gallery__media-thumbnail-blurrer{-webkit-backdrop-filter: none;backdrop-filter: none;box-shadow: 0 0 transparent;}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption-wrapper--overlay{background-color: rgba(0,0,0,0.75);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:hover .spectra-image-gallery__media-thumbnail-caption-wrapper--overlay{background-color: rgba(0,0,0,0.75);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:focus-visible .spectra-image-gallery__media-thumbnail-caption-wrapper--overlay{background-color: rgba(0,0,0,0.75);}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption-wrapper--bar-inside{-webkit-align-items: flex-end;align-items: flex-end;-webkit-justify-content: center;justify-content: center;}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption a{color: rgba(255,255,255,1);}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption{color: rgba(255,255,255,1);text-align: center;font-style: normal;text-decoration: none;padding: 8px 8px 8px 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption--overlay{-webkit-align-items: flex-end;align-items: flex-end;-webkit-justify-content: center;justify-content: center;}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption--bar-inside{background-color: rgba(0,0,0,0.75);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:hover .spectra-image-gallery__media-thumbnail-caption--bar-inside{background-color: rgba(0,0,0,0.75);}.uagb-block-39ff3b72spectra-image-gallery__media-wrapper:focus-visible .spectra-image-gallery__media-thumbnail-caption--bar-inside{background-color: rgba(0,0,0,0.75);}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption--bar-outside{background-color: rgba(0,0,0,0.75);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:hover .spectra-image-gallery__media-thumbnail-caption--bar-outside{background-color: rgba(0,0,0,0.75);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:focus-visible .spectra-image-gallery__media-thumbnail-caption--bar-outside{background-color: rgba(0,0,0,0.75);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:hover .spectra-image-gallery__media-thumbnail-caption{color: rgba(255,255,255,1);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:focus-visible .spectra-image-gallery__media-thumbnail-caption{color: rgba(255,255,255,1);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:hover .spectra-image-gallery__media-thumbnail-caption a{color: rgba(255,255,255,1);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:focus-visible .spectra-image-gallery__media-thumbnail-caption a{color: rgba(255,255,255,1);}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox{background-color: rgba(0,0,0,0.75);backdrop-filter: blur( 5px);}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--caption{color: rgba(255,255,255,1);background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,1));min-height: 50px;font-style: normal;text-decoration: none;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--thumbnails-wrapper{background-color: transparent;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--count{top: 10px;left: 10px;color: rgba(255,255,255,1);font-weight: normal;font-size: calc(24px * 3 \/ 4 );line-height: calc(24px * 3 \/ 4 );}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--close{top: 10px;right: 10px;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--close svg{width: 24px;height: 24px;fill: rgba(255,255,255,1);}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main .swiper-button-prev{left: 10px;color: rgba(255,255,255,1);}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main .swiper-button-next{right: 10px;color: rgba(255,255,255,1);}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main.swiper-rtl .swiper-button-prev{right: 10px;left: auto;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main.swiper-rtl .swiper-button-next{left: 10px;right: auto;}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail{-webkit-filter: none;filter: none;transform: scale3d(1.005, 1.005, 1.005);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:hover .spectra-image-gallery__media-thumbnail{-webkit-filter: none;filter: none;transform: scale3d(1.1, 1.1, 1.1);}.uagb-block-39ff3b72 .spectra-image-gallery__media-wrapper:focus-visible .spectra-image-gallery__media-thumbnail{-webkit-filter: none;filter: none;transform: scale3d(1.1, 1.1, 1.1);}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption-wrapper{margin-top: 0px;}.uagb-block-39ff3b72 .spectra-image-gallery__iso-ref-wrapper{overflow: auto;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel .slick-dots{margin-bottom: 30px !important;}.spectra-touch-device.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption,.spectra-touch-device.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption-wrapper{transition:none !important;-webkit-backface-visibility:hidden;backface-visibility:hidden;}.spectra-touch-device.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption-wrapper--overlay,.spectra-touch-device.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption--bar-inside{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0);}@media(hover:none),(pointer:coarse){.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption,.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption-wrapper{transition:none !important;-webkit-backface-visibility:hidden;backface-visibility:hidden;}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption-wrapper--overlay,.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption--bar-inside{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0);}}.wp-block-uagb-container.uagb-block-5fd536df .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-5fd536df .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-5fd536df .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-5fd536df .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-5fd536df .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-5fd536df{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-5fd536df > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: row;align-items: center;justify-content: flex-start;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-5fd536df{box-shadow: 0px 0px   #00000070 ;padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-5fd536df.wp-block-uagb-container > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not( .spectra-container-link-overlay ):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-lottie):not(.uagb-container-inner-blocks-wrap){width: auto !important;}.wp-block-uagb-container.uagb-block-5fd536df.wp-block-uagb-container > .uagb-container-inner-blocks-wrap > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not(.spectra-image-gallery__control-lightbox){width: auto !important;}.wp-block-uagb-container.uagb-block-d8efc734 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-d8efc734 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-d8efc734 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-d8efc734 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-d8efc734 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-d8efc734{max-width: 10%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-d8efc734 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-d8efc734{box-shadow: 0px 0px   #00000070 ;padding-top: 4px;padding-bottom: 4px;padding-left: 16px;padding-right: 16px;margin-top: 0px !important;margin-bottom: 20px !important;margin-left: 0px;margin-right: 0px;overflow: visible;order: initial;border-top-left-radius: 40px;border-top-right-radius: 40px;border-bottom-left-radius: 40px;border-bottom-right-radius: 40px;border-style: none;border-color: inherit;background-color: var(--ast-global-color-4);;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-advanced-heading.uagb-block-4a10c111.wp-block-uagb-advanced-heading .uagb-heading-text{color: var(--ast-global-color-2);}.wp-block-uagb-advanced-heading.uagb-block-4a10c111.wp-block-uagb-advanced-heading {text-align: center;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-4a10c111.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-4a10c111.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-4a10c111.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-4a10c111.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-container.uagb-block-a2ef876d .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-a2ef876d .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-a2ef876d .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-a2ef876d .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-a2ef876d .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-a2ef876d{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-a2ef876d > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 0px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-a2ef876d{box-shadow: 0px 0px   #00000070 ;padding-top: 24px;padding-bottom: 24px;padding-left: 24px;padding-right: 24px;margin-top: 32px !important;margin-bottom: 48px !important;margin-left: 0px;margin-right: 0px;overflow: visible;order: initial;border-top-width: 1px;border-left-width: 1px;border-right-width: 1px;border-bottom-width: 1px;border-top-left-radius: 20px;border-top-right-radius: 20px;border-bottom-left-radius: 20px;border-bottom-right-radius: 20px;border-style: solid;border-color: #d4b4fd;row-gap: 0px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-603527d0 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-603527d0 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-603527d0 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-603527d0 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-603527d0 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-603527d0{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-603527d0 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: row;align-items: center;justify-content: flex-start;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-603527d0{box-shadow: 0px 0px   #00000070 ;padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-603527d0.wp-block-uagb-container > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not( .spectra-container-link-overlay ):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-lottie):not(.uagb-container-inner-blocks-wrap){width: auto !important;}.wp-block-uagb-container.uagb-block-603527d0.wp-block-uagb-container > .uagb-container-inner-blocks-wrap > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not(.spectra-image-gallery__control-lightbox){width: auto !important;}.wp-block-uagb-container.uagb-block-c1b6d94c .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-c1b6d94c .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-c1b6d94c .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-c1b6d94c .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-c1b6d94c .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-c1b6d94c{max-width: 10%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-c1b6d94c > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-c1b6d94c{box-shadow: 0px 0px   #00000070 ;padding-top: 4px;padding-bottom: 4px;padding-left: 16px;padding-right: 16px;margin-top: 0px !important;margin-bottom: 20px !important;margin-left: 0px;margin-right: 0px;overflow: visible;order: initial;border-top-left-radius: 40px;border-top-right-radius: 40px;border-bottom-left-radius: 40px;border-bottom-right-radius: 40px;border-style: none;border-color: inherit;background-color: var(--ast-global-color-4);;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-advanced-heading.uagb-block-68e36a9a.wp-block-uagb-advanced-heading .uagb-heading-text{color: var(--ast-global-color-2);}.wp-block-uagb-advanced-heading.uagb-block-68e36a9a.wp-block-uagb-advanced-heading {text-align: center;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-68e36a9a.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-68e36a9a.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-68e36a9a.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-68e36a9a.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-container.uagb-block-70d21a2f .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-70d21a2f .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-70d21a2f .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-70d21a2f .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-70d21a2f .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-70d21a2f{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-70d21a2f > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 0px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-70d21a2f{box-shadow: 0px 0px   #00000070 ;padding-top: 24px;padding-bottom: 24px;padding-left: 24px;padding-right: 24px;margin-top: 32px !important;margin-bottom: 48px !important;margin-left: 0px;margin-right: 0px;overflow: visible;order: initial;border-top-width: 1px;border-left-width: 1px;border-right-width: 1px;border-bottom-width: 1px;border-top-left-radius: 20px;border-top-right-radius: 20px;border-bottom-left-radius: 20px;border-bottom-right-radius: 20px;border-style: solid;border-color: #d4b4fd;row-gap: 0px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-3b93f13f .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-3b93f13f .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-3b93f13f .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-3b93f13f .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-3b93f13f .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-3b93f13f{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-3b93f13f > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: row;align-items: center;justify-content: flex-start;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-3b93f13f{box-shadow: 0px 0px   #00000070 ;padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-3b93f13f.wp-block-uagb-container > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not( .spectra-container-link-overlay ):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-lottie):not(.uagb-container-inner-blocks-wrap){width: auto !important;}.wp-block-uagb-container.uagb-block-3b93f13f.wp-block-uagb-container > .uagb-container-inner-blocks-wrap > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not(.spectra-image-gallery__control-lightbox){width: auto !important;}.wp-block-uagb-container.uagb-block-1883f0e0 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-1883f0e0 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-1883f0e0 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-1883f0e0 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-1883f0e0 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-1883f0e0{max-width: 10%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-1883f0e0 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-1883f0e0{box-shadow: 0px 0px   #00000070 ;padding-top: 4px;padding-bottom: 4px;padding-left: 16px;padding-right: 16px;margin-top: 0px !important;margin-bottom: 20px !important;margin-left: 0px;margin-right: 0px;overflow: visible;order: initial;border-top-left-radius: 40px;border-top-right-radius: 40px;border-bottom-left-radius: 40px;border-bottom-right-radius: 40px;border-style: none;border-color: inherit;background-color: var(--ast-global-color-4);;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;}.wp-block-uagb-advanced-heading.uagb-block-357159f5.wp-block-uagb-advanced-heading .uagb-heading-text{color: var(--ast-global-color-2);}.wp-block-uagb-advanced-heading.uagb-block-357159f5.wp-block-uagb-advanced-heading {text-align: center;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-357159f5.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-357159f5.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-357159f5.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-357159f5.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-container.uagb-block-4f13cfc4 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-4f13cfc4 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-4f13cfc4 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-4f13cfc4 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-4f13cfc4 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-4f13cfc4{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-4f13cfc4 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 24px;column-gap: 20px;}.wp-block-uagb-container.uagb-block-4f13cfc4{box-shadow: 0px 0px   #00000070 ;padding-top: 48px;padding-bottom: 48px;padding-left: 48px;padding-right: 48px;margin-top: 48px !important;margin-bottom: 0px !important;margin-left: 0px;margin-right: 0px;overflow: visible;order: initial;border-top-width: 1px;border-left-width: 1px;border-right-width: 1px;border-bottom-width: 1px;border-top-left-radius: 20px;border-top-right-radius: 20px;border-bottom-left-radius: 20px;border-bottom-right-radius: 20px;border-style: solid;border-color: rgba(205,189,226,0.1);background-repeat: no-repeat;background-position: 50% 0%;background-size: cover;background-attachment: scroll;background-image: url(https:\/\/ptc.wpml.org\/wp-content\/uploads\/2024\/02\/Hero-bg-min.png);background-clip: padding-box;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 24px;column-gap: 20px;}.wp-block-uagb-advanced-heading.uagb-block-bd69da8b.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-bd69da8b.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-bd69da8b.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-bd69da8b.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-bb9e78d5.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-bb9e78d5.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-bb9e78d5.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-bb9e78d5.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.uagb-block-b69278b3.wp-block-uagb-buttons.uagb-buttons__outer-wrap .uagb-buttons__wrap {gap: 10px;}.uagb-block-b69278b3.uagb-buttons__outer-wrap .uagb-buttons__wrap {justify-content: left;align-items: center;}.wp-block-uagb-buttons .uagb-block-bdaafad6 .uagb-button__wrapper  .uagb-buttons-repeater.wp-block-button__link{box-shadow: 0px 0px 0 #00000026;}.wp-block-uagb-buttons .uagb-block-bdaafad6 .uagb-button__wrapper  .uagb-buttons-repeater.wp-block-button__link:hover{box-shadow: 0px 0px 0 #00000026;}.wp-block-uagb-buttons .uagb-block-bdaafad6 .uagb-buttons-repeater.wp-block-button__link:hover{border-color: #333;}.wp-block-uagb-buttons .uagb-block-bdaafad6 .uagb-buttons-repeater.wp-block-button__link:focus{border-color: #333;}.wp-block-uagb-buttons .uagb-block-bdaafad6.wp-block-button.is-style-outline .uagb-button__wrapper .wp-block-button__link.uagb-buttons-repeater:hover{border-color: #333;}.wp-block-uagb-buttons .uagb-block-bdaafad6 .uagb-buttons-repeater .uagb-button__icon > svg{width: 15px;height: 15px;}.wp-block-uagb-buttons .uagb-block-bdaafad6 .uagb-buttons-repeater .uagb-button__icon-position-after{margin-left: 8px;}.wp-block-uagb-buttons .uagb-block-bdaafad6 .uagb-buttons-repeater .uagb-button__icon-position-before{margin-right: 8px;}.wp-block-uagb-buttons .uagb-block-bdaafad6 .uagb-button__link{text-transform: normal;text-decoration: none;}.wp-block-uagb-container.uagb-block-e306e24e .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-e306e24e .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-e306e24e .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-e306e24e .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-e306e24e .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-e306e24e{max-width: 25%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-e306e24e > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 0px;column-gap: 0px;}.wp-block-uagb-container.uagb-block-e306e24e{box-shadow: 0px 0px   #00000070 ;padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 0px;column-gap: 0px;}.wp-block-uagb-advanced-heading.uagb-block-a4c24409.wp-block-uagb-advanced-heading .uagb-heading-text{color: var(--ast-global-color-3);}.wp-block-uagb-advanced-heading.uagb-block-a4c24409.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 20px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-a4c24409.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-a4c24409.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-a4c24409.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-a4c24409.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-a4c24409 .uagb-heading-text{font-weight: 500;font-size: 20px;}.wp-block-uagb-advanced-heading.uagb-block-889b1ee5.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 16px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-889b1ee5.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-889b1ee5.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-889b1ee5.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-889b1ee5.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-889b1ee5 .uagb-heading-text{font-size: 15px;}.wp-block-uagb-advanced-heading.uagb-block-c8ed9511.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 16px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-c8ed9511.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-c8ed9511.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-c8ed9511.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-c8ed9511.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-c8ed9511 .uagb-heading-text{font-size: 15px;}.wp-block-uagb-advanced-heading.uagb-block-99e44a2f.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 16px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-99e44a2f.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-99e44a2f.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-99e44a2f.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-99e44a2f.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-99e44a2f .uagb-heading-text{font-size: 15px;}.wp-block-uagb-container.uagb-block-fabb3c95 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-fabb3c95 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-fabb3c95 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-fabb3c95 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-fabb3c95 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-fabb3c95{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-fabb3c95 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 16px;column-gap: 0px;}.wp-block-uagb-container.uagb-block-fabb3c95{box-shadow: 0px 0px   #00000070 ;padding-top: 0px;padding-bottom: 0px;padding-left: 24px;padding-right: 24px;margin-top: 0px !important;margin-bottom: 16px !important;margin-left: 0px;margin-right: 0px;overflow: visible;order: initial;border-top-width: 0px;border-left-width: 1px;border-right-width: 0px;border-bottom-width: 0px;border-style: solid;border-color: rgba(205,189,226,0.2);flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 16px;column-gap: 0px;}.wp-block-uagb-advanced-heading.uagb-block-83f5f89c.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-83f5f89c.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-83f5f89c.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-83f5f89c.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-83f5f89c.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-83f5f89c .uagb-heading-text{font-size: 15px;}.wp-block-uagb-advanced-heading.uagb-block-6e2782c9.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-6e2782c9.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-6e2782c9.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-6e2782c9.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-6e2782c9.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-6e2782c9 .uagb-heading-text{font-size: 15px;}.wp-block-uagb-advanced-heading.uagb-block-f18e849a.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-f18e849a.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-f18e849a.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-f18e849a.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-f18e849a.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-f18e849a .uagb-heading-text{font-size: 15px;}.wp-block-uagb-advanced-heading.uagb-block-a02fa26b.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 16px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-a02fa26b.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-a02fa26b.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-a02fa26b.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-a02fa26b.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-a02fa26b .uagb-heading-text{font-size: 15px;}.wp-block-uagb-container.uagb-block-cc0cd036 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-cc0cd036 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-cc0cd036 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-cc0cd036 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-cc0cd036 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-cc0cd036{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-cc0cd036 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1280px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 16px;column-gap: 0px;}.wp-block-uagb-container.uagb-block-cc0cd036{box-shadow: 0px 0px   #00000070 ;padding-top: 0px;padding-bottom: 0px;padding-left: 24px;padding-right: 24px;margin-top: 0px !important;margin-bottom: 16px !important;margin-left: 0px;margin-right: 0px;overflow: visible;order: initial;border-top-width: 0px;border-left-width: 1px;border-right-width: 0px;border-bottom-width: 0px;border-style: solid;border-color: rgba(205,189,226,0.2);flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 16px;column-gap: 0px;}.wp-block-uagb-advanced-heading.uagb-block-505f6771.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-505f6771.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-505f6771.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-505f6771.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-505f6771.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-505f6771 .uagb-heading-text{font-size: 15px;}.wp-block-uagb-advanced-heading.uagb-block-dec77b8e.wp-block-uagb-advanced-heading {margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;}.wp-block-uagb-advanced-heading.uagb-block-dec77b8e.wp-block-uagb-advanced-heading .uagb-desc-text{margin-bottom: 15px;}.wp-block-uagb-advanced-heading.uagb-block-dec77b8e.wp-block-uagb-advanced-heading .uagb-highlight{font-style: normal;font-weight: Default;background: #007cba;color: #fff;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-dec77b8e.wp-block-uagb-advanced-heading .uagb-highlight::-moz-selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-dec77b8e.wp-block-uagb-advanced-heading .uagb-highlight::selection{color: #fff;background: #007cba;-webkit-text-fill-color: #fff;}.wp-block-uagb-advanced-heading.uagb-block-dec77b8e .uagb-heading-text{font-size: 15px;}@media only screen and (max-width: 976px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-7d0a9c8b{width: 100%;}.wp-block-uagb-container.uagb-block-7d0a9c8b{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top: 64px !important;margin-bottom: 0px !important;order: initial;flex-wrap: wrap-reverse;max-width:  !important;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-ec2c2fb6{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-ec2c2fb6 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;}.wp-block-uagb-container.uagb-block-ec2c2fb6{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-480d8777{width: 100%;}.wp-block-uagb-container.uagb-block-480d8777{padding-top: 40px;padding-bottom: 40px;padding-left: 40px;padding-right: 40px;margin-top: 0px !important;margin-bottom: 36px !important;order: initial;border-style: none;background-color: rgba(205,189,226,0.1);;max-width:  !important;}.uagb-block-60bbf702.uagb-buttons__outer-wrap .uagb-buttons__wrap {justify-content: left;align-items: center;}.uagb-block-60bbf702.uagb-buttons__outer-wrap .uagb-buttons__wrap .wp-block-button{width: auto;}.uagb-block-39ff3b72.wp-block-uagb-image-gallery{padding:    ;}.uagb-block-39ff3b72 .spectra-image-gallery__control-arrows--carousel{border-style: none;}.uagb-block-39ff3b72 .spectra-image-gallery__control-button{padding:    ;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--grid{grid-gap: 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--isogrid{margin: -4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--isogrid .spectra-image-gallery__media-wrapper--isotope{padding: 4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--masonry{margin: -4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--masonry .spectra-image-gallery__media-wrapper--isotope{padding: 4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel .spectra-image-gallery__media-wrapper{padding: 0px 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel .slick-list{margin: 0px -8px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--tiled{grid-gap: 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__media{border-color: rgba(206,191,227,0.18);}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption{padding: 8px 8px 8px 8px;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main.swiper-rtl .swiper-button-prev{left: auto;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main.swiper-rtl .swiper-button-next{right: auto;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-5fd536df{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-5fd536df > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: flex-start;row-gap: 12px;}.wp-block-uagb-container.uagb-block-5fd536df{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;row-gap: 12px;}.wp-block-uagb-container.uagb-block-5fd536df.wp-block-uagb-container > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not( .spectra-container-link-overlay ):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-lottie):not(.uagb-container-inner-blocks-wrap){width: auto !important;}.wp-block-uagb-container.uagb-block-5fd536df.wp-block-uagb-container > .uagb-container-inner-blocks-wrap > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not(.spectra-image-gallery__control-lightbox){width: auto !important;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-d8efc734{max-width: 17%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-d8efc734 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;row-gap: 10px;}.wp-block-uagb-container.uagb-block-d8efc734{padding-top: 4px;padding-bottom: 4px;padding-left: 16px;padding-right: 16px;margin-top: 0px !important;margin-bottom: 20px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: none;background-color: var(--ast-global-color-4);;row-gap: 10px;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-a2ef876d{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-a2ef876d > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;}.wp-block-uagb-container.uagb-block-a2ef876d{padding-top: 24px;padding-bottom: 24px;padding-left: 24px;padding-right: 24px;margin-top: 32px !important;margin-bottom: 48px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: #d4b4fd;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-603527d0{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-603527d0 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: flex-start;row-gap: 12px;}.wp-block-uagb-container.uagb-block-603527d0{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;row-gap: 12px;}.wp-block-uagb-container.uagb-block-603527d0.wp-block-uagb-container > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not( .spectra-container-link-overlay ):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-lottie):not(.uagb-container-inner-blocks-wrap){width: auto !important;}.wp-block-uagb-container.uagb-block-603527d0.wp-block-uagb-container > .uagb-container-inner-blocks-wrap > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not(.spectra-image-gallery__control-lightbox){width: auto !important;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-c1b6d94c{max-width: 17%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-c1b6d94c > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;row-gap: 10px;}.wp-block-uagb-container.uagb-block-c1b6d94c{padding-top: 4px;padding-bottom: 4px;padding-left: 16px;padding-right: 16px;margin-top: 0px !important;margin-bottom: 20px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: none;background-color: var(--ast-global-color-4);;row-gap: 10px;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-70d21a2f{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-70d21a2f > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;}.wp-block-uagb-container.uagb-block-70d21a2f{padding-top: 24px;padding-bottom: 24px;padding-left: 24px;padding-right: 24px;margin-top: 32px !important;margin-bottom: 48px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: #d4b4fd;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-3b93f13f{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-3b93f13f > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;flex-direction: column;align-items: flex-start;row-gap: 12px;}.wp-block-uagb-container.uagb-block-3b93f13f{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;row-gap: 12px;}.wp-block-uagb-container.uagb-block-3b93f13f.wp-block-uagb-container > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not( .spectra-container-link-overlay ):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-lottie):not(.uagb-container-inner-blocks-wrap){width: auto !important;}.wp-block-uagb-container.uagb-block-3b93f13f.wp-block-uagb-container > .uagb-container-inner-blocks-wrap > *:not( .wp-block-uagb-column ):not( .wp-block-uagb-section ):not( .uagb-container__shape ):not( .uagb-container__video-wrap ):not( .uagb-slider-container ):not(.spectra-image-gallery__control-lightbox){width: auto !important;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-1883f0e0{max-width: 17%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-1883f0e0 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;row-gap: 10px;}.wp-block-uagb-container.uagb-block-1883f0e0{padding-top: 4px;padding-bottom: 4px;padding-left: 16px;padding-right: 16px;margin-top: 0px !important;margin-bottom: 20px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: none;background-color: var(--ast-global-color-4);;row-gap: 10px;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-4f13cfc4{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-4f13cfc4 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;}.wp-block-uagb-container.uagb-block-4f13cfc4{padding-top: 48px;padding-bottom: 48px;padding-left: 48px;padding-right: 48px;margin-top: 48px !important;margin-bottom: 0px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: rgba(205,189,226,0.1);background-image: url(https:\/\/ptc.wpml.org\/wp-content\/uploads\/2024\/02\/Hero-bg-min.png);background-clip: padding-box;}.uagb-block-b69278b3.uagb-buttons__outer-wrap .uagb-buttons__wrap {justify-content: left;align-items: center;}.uagb-block-b69278b3.uagb-buttons__outer-wrap .uagb-buttons__wrap .wp-block-button{width: auto;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-e306e24e{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-e306e24e > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;}.wp-block-uagb-container.uagb-block-e306e24e{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-fabb3c95{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-fabb3c95 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;}.wp-block-uagb-container.uagb-block-fabb3c95{padding-top: 0px;padding-bottom: 0px;padding-left: 24px;padding-right: 24px;margin-top: 0px !important;margin-bottom: 16px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: rgba(205,189,226,0.2);}.wp-block-uagb-container.uagb-is-root-container .uagb-block-cc0cd036{width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-cc0cd036 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 1024px);max-width: var(--inner-content-custom-width);width: 100%;}.wp-block-uagb-container.uagb-block-cc0cd036{padding-top: 0px;padding-bottom: 0px;padding-left: 24px;padding-right: 24px;margin-top: 0px !important;margin-bottom: 16px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: rgba(205,189,226,0.2);}}@media only screen and (max-width: 767px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-7d0a9c8b{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-7d0a9c8b{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top: 64px !important;margin-bottom: 0px !important;order: initial;flex-wrap: wrap-reverse;max-width: 100% !important;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-ec2c2fb6{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-ec2c2fb6 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-ec2c2fb6{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;flex-wrap: wrap;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-480d8777{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-480d8777{padding-top: 24px;padding-bottom: 24px;padding-left: 24px;padding-right: 24px;margin-top: 0px !important;margin-bottom: 36px !important;order: initial;border-style: none;background-color: rgba(205,189,226,0.1);;flex-wrap: wrap;max-width: 100% !important;}.uagb-block-60bbf702.uagb-buttons__outer-wrap .uagb-buttons__wrap{width: 100%;}.uagb-block-60bbf702.uagb-buttons__outer-wrap .uagb-buttons__wrap .wp-block-button {width: 100%;}.uagb-block-39ff3b72.wp-block-uagb-image-gallery{padding:    ;}.uagb-block-39ff3b72 .spectra-image-gallery__control-arrows--carousel{border-style: none;}.uagb-block-39ff3b72 .spectra-image-gallery__control-button{padding:    ;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--grid{grid-gap: 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--isogrid{margin: -4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--isogrid .spectra-image-gallery__media-wrapper--isotope{padding: 4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--masonry{margin: -4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--masonry .spectra-image-gallery__media-wrapper--isotope{padding: 4px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel .spectra-image-gallery__media-wrapper{padding: 0px 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--carousel .slick-list{margin: 0px -8px;}.uagb-block-39ff3b72 .spectra-image-gallery__layout--tiled .spectra-image-gallery__media-wrapper{grid-gap: 8px;}.uagb-block-39ff3b72 .spectra-image-gallery__media{border-color: rgba(206,191,227,0.18);}.uagb-block-39ff3b72 .spectra-image-gallery__media-thumbnail-caption{padding: 8px 8px 8px 8px;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main.swiper-rtl .swiper-button-prev{left: auto;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main.swiper-rtl .swiper-button-next{right: auto;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main .swiper-button-prev::after{font-size: 24px;}.uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main .swiper-button-next::after{font-size: 24px;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-5fd536df{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-5fd536df > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-5fd536df{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-d8efc734{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-d8efc734 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-d8efc734{padding-top: 4px;padding-bottom: 4px;padding-left: 16px;padding-right: 16px;margin-top: 0px !important;margin-bottom: 20px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: none;background-color: var(--ast-global-color-4);;flex-wrap: wrap;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-a2ef876d{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-a2ef876d > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-a2ef876d{padding-top: 24px;padding-bottom: 24px;padding-left: 24px;padding-right: 24px;margin-top: 32px !important;margin-bottom: 48px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: #d4b4fd;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-603527d0{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-603527d0 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-603527d0{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-c1b6d94c{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-c1b6d94c > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-c1b6d94c{padding-top: 4px;padding-bottom: 4px;padding-left: 16px;padding-right: 16px;margin-top: 0px !important;margin-bottom: 20px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: none;background-color: var(--ast-global-color-4);;flex-wrap: wrap;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-70d21a2f{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-70d21a2f > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-70d21a2f{padding-top: 24px;padding-bottom: 24px;padding-left: 24px;padding-right: 24px;margin-top: 32px !important;margin-bottom: 48px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: #d4b4fd;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-3b93f13f{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-3b93f13f > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-3b93f13f{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-1883f0e0{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-1883f0e0 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-1883f0e0{padding-top: 4px;padding-bottom: 4px;padding-left: 16px;padding-right: 16px;margin-top: 0px !important;margin-bottom: 20px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: none;background-color: var(--ast-global-color-4);;flex-wrap: wrap;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-4f13cfc4{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-4f13cfc4 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-4f13cfc4{padding-top: 24px;padding-bottom: 24px;padding-left: 24px;padding-right: 24px;margin-top: 12px !important;margin-bottom: 0px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: rgba(205,189,226,0.1);background-image: url(https:\/\/ptc.wpml.org\/wp-content\/uploads\/2024\/02\/Hero-bg-min.png);background-clip: padding-box;flex-wrap: wrap;}.uagb-block-b69278b3.uagb-buttons__outer-wrap .uagb-buttons__wrap{width: 100%;}.uagb-block-b69278b3.uagb-buttons__outer-wrap .uagb-buttons__wrap .wp-block-button {width: 100%;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-e306e24e{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-e306e24e > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-e306e24e{padding-top: 0px;padding-bottom: 0px;padding-left: 0px;padding-right: 0px;margin-top:  !important;margin-bottom:  !important;order: initial;flex-wrap: wrap;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-fabb3c95{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-fabb3c95 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-fabb3c95{padding-top: 0px;padding-bottom: 0px;padding-left: 24px;padding-right: 24px;margin-top: 0px !important;margin-bottom: 16px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: rgba(205,189,226,0.2);flex-wrap: wrap;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-cc0cd036{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-cc0cd036 > .uagb-container-inner-blocks-wrap{--inner-content-custom-width: min( 100%, 767px);max-width: var(--inner-content-custom-width);width: 100%;flex-wrap: wrap;}.wp-block-uagb-container.uagb-block-cc0cd036{padding-top: 0px;padding-bottom: 0px;padding-left: 24px;padding-right: 24px;margin-top: 0px !important;margin-bottom: 16px !important;margin-left: 0px;margin-right: 0px;order: initial;border-style: solid;border-color: rgba(205,189,226,0.2);flex-wrap: wrap;}}\";s:2:\"js\";s:29762:\"document.addEventListener(\"DOMContentLoaded\", function(){ window.addEventListener( 'load', function() {\n\tUAGBButtonChild.init( '.uagb-block-5ea4a834' );\n});\n\t\t\t\twindow.addEventListener( 'DOMContentLoaded', function() {\n\t\t\t\t\tconst scope = document.querySelector( '.uagb-block-39ff3b72' );\n\t\t\t\t\tif ( scope ){\n\t\t\t\t\t\tif ( scope.children[0].classList.contains( 'spectra-image-gallery__layout--masonry' ) ) {\n\t\t\t\t\t\t\t\/\/ Add timeout for the images to load.\n\t\t\t\t\t\t\tsetTimeout( function() {\n\t\t\t\t\t\t\t\tconst element = scope.querySelector( '.spectra-image-gallery__layout--masonry' );\n\t\t\t\t\t\t\t\tconst isotope = new Isotope( element, {\n\t\t\t\t\t\t\t\t\titemSelector: '.spectra-image-gallery__media-wrapper--isotope',\n\t\t\t\t\t\t\t\t\tpercentPosition: true,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\timagesLoaded( element ).on( 'progress', function() {\n\t\t\t\t\t\t\t\t\tisotope.layout();\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\timagesLoaded( element ).on( 'always', function() {\n\t\t\t\t\t\t\t\t\telement.parentNode.style.visibility = 'visible';\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\tUAGBImageGalleryMasonry.init( {\"block_id\":\"39ff3b72\",\"classMigrate\":true,\"readyToRender\":true,\"mediaGallery\":[{\"sizes\":{\"thumbnail\":{\"height\":150,\"width\":150,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-150x150.png\",\"orientation\":\"landscape\"},\"medium\":{\"height\":152,\"width\":300,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-300x152.png\",\"orientation\":\"landscape\"},\"large\":{\"height\":517,\"width\":1024,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-1024x517.png\",\"orientation\":\"landscape\"},\"full\":{\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project.png\",\"height\":1110,\"width\":2198,\"orientation\":\"landscape\"},\"cmplz_banner_image\":{\"height\":100,\"width\":350,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-350x100.png\",\"orientation\":\"landscape\"}},\"mime\":\"image\/png\",\"type\":\"image\",\"subtype\":\"png\",\"id\":17350,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project.png\",\"alt\":\"Creating a new project in PTC\",\"link\":\"https:\/\/ptc.wpml.org\/?attachment_id=17350\",\"caption\":\"Creating a new project\"},{\"sizes\":{\"thumbnail\":{\"height\":150,\"width\":150,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-150x150.png\",\"orientation\":\"landscape\"},\"medium\":{\"height\":176,\"width\":300,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-300x176.png\",\"orientation\":\"landscape\"},\"large\":{\"height\":601,\"width\":1024,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-1024x601.png\",\"orientation\":\"landscape\"},\"full\":{\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration.png\",\"height\":1067,\"width\":1817,\"orientation\":\"landscape\"},\"cmplz_banner_image\":{\"height\":100,\"width\":350,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-350x100.png\",\"orientation\":\"landscape\"}},\"mime\":\"image\/png\",\"type\":\"image\",\"subtype\":\"png\",\"id\":17351,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration.png\",\"alt\":\"Choosing API integration in PTC setup\",\"link\":\"https:\/\/ptc.wpml.org\/?attachment_id=17351\",\"caption\":\"Choosing API Integration\"},{\"sizes\":{\"thumbnail\":{\"height\":150,\"width\":150,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-150x150.png\",\"orientation\":\"landscape\"},\"medium\":{\"height\":135,\"width\":300,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-300x135.png\",\"orientation\":\"landscape\"},\"large\":{\"height\":459,\"width\":1024,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-1024x459.png\",\"orientation\":\"landscape\"},\"full\":{\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-scaled.png\",\"height\":1148,\"width\":2560,\"orientation\":\"landscape\"},\"cmplz_banner_image\":{\"height\":100,\"width\":350,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-350x100.png\",\"orientation\":\"landscape\"}},\"mime\":\"image\/png\",\"type\":\"image\",\"subtype\":\"png\",\"id\":17352,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-scaled.png\",\"alt\":\"API token under Settings u2192 Manage API tokens\",\"link\":\"https:\/\/ptc.wpml.org\/?attachment_id=17352\",\"caption\":\"API token under Settings u2192 Manage API tokens\"}],\"mediaIDs\":[17350,17351,17352],\"feedLayout\":\"masonry\",\"galleryImageSize\":\"full\",\"imageClickEvent\":\"lightbox\",\"captionVisibility\":\"always\",\"captionDisplayType\":\"bar-outside\",\"imageCaptionAlignment\":\"bottom center\",\"imageCaptionAlignment01\":\"bottom\",\"columnsDesk\":2,\"columnsTab\":1,\"columnsMob\":1,\"imageBorderTopWidth\":1,\"imageBorderLeftWidth\":1,\"imageBorderRightWidth\":1,\"imageBorderBottomWidth\":1,\"imageBorderTopLeftRadius\":20,\"imageBorderTopRightRadius\":20,\"imageBorderBottomLeftRadius\":20,\"imageBorderBottomRightRadius\":20,\"imageBorderColor\":\"rgba(206,191,227,0.18)\",\"wpmlTranslatedContent\":\"1\",\"tileSize\":0,\"focusList\":[],\"focusListObject\":[],\"imageDisplayCaption\":true,\"galleryImageSizeTablet\":\"large\",\"galleryImageSizeMobile\":\"medium\",\"disableLazyLoad\":false,\"lightboxDisplayCaptions\":false,\"lightboxThumbnails\":false,\"lightboxDisplayCount\":false,\"lightboxCloseIcon\":\"xmark\",\"lightboxCaptionHeight\":50,\"lightboxCaptionHeightTablet\":\"\",\"lightboxCaptionHeightMobile\":\"\",\"lightboxIconSize\":24,\"lightboxIconSizeTablet\":\"\",\"lightboxIconSizeMobile\":\"\",\"imageCaptionAlignment02\":\"center\",\"imageDefaultCaption\":\"No Caption\",\"captionPaddingTop\":8,\"captionPaddingRight\":8,\"captionPaddingBottom\":8,\"captionPaddingLeft\":8,\"captionPaddingTopTab\":8,\"captionPaddingRightTab\":8,\"captionPaddingBottomTab\":8,\"captionPaddingLeftTab\":8,\"captionPaddingTopMob\":8,\"captionPaddingRightMob\":8,\"captionPaddingBottomMob\":8,\"captionPaddingLeftMob\":8,\"captionPaddingUnit\":\"px\",\"captionPaddingUnitTab\":\"px\",\"captionPaddingUnitMob\":\"px\",\"captionPaddingUnitLink\":true,\"captionGap\":0,\"captionGapUnit\":\"px\",\"gridImageGap\":8,\"gridImageGapTab\":\"\",\"gridImageGapMob\":\"\",\"gridImageGapUnit\":\"px\",\"gridImageGapUnitTab\":\"px\",\"gridImageGapUnitMob\":\"px\",\"feedMarginTop\":\"\",\"feedMarginRight\":\"\",\"feedMarginBottom\":\"\",\"feedMarginLeft\":\"\",\"feedMarginTopTab\":\"\",\"feedMarginRightTab\":\"\",\"feedMarginBottomTab\":\"\",\"feedMarginLeftTab\":\"\",\"feedMarginTopMob\":\"\",\"feedMarginRightMob\":\"\",\"feedMarginBottomMob\":\"\",\"feedMarginLeftMob\":\"\",\"feedMarginUnit\":\"px\",\"feedMarginUnitTab\":\"px\",\"feedMarginUnitMob\":\"px\",\"feedMarginUnitLink\":true,\"carouselStartAt\":0,\"carouselSquares\":false,\"carouselLoop\":true,\"carouselAutoplay\":true,\"carouselAutoplaySpeed\":2000,\"carouselPauseOnHover\":true,\"carouselTransitionSpeed\":500,\"gridPages\":1,\"gridPageNumber\":1,\"feedPagination\":false,\"paginateUseArrows\":true,\"paginateUseDots\":true,\"paginateUseLoader\":true,\"paginateLimit\":9,\"paginateButtonAlign\":\"center\",\"paginateButtonText\":\"Load More Images\",\"paginateButtonPaddingTop\":\"\",\"paginateButtonPaddingRight\":\"\",\"paginateButtonPaddingBottom\":\"\",\"paginateButtonPaddingLeft\":\"\",\"paginateButtonPaddingTopTab\":\"\",\"paginateButtonPaddingRightTab\":\"\",\"paginateButtonPaddingBottomTab\":\"\",\"paginateButtonPaddingLeftTab\":\"\",\"paginateButtonPaddingTopMob\":\"\",\"paginateButtonPaddingRightMob\":\"\",\"paginateButtonPaddingBottomMob\":\"\",\"paginateButtonPaddingLeftMob\":\"\",\"paginateButtonPaddingUnit\":\"px\",\"paginateButtonPaddingUnitTab\":\"px\",\"paginateButtonPaddingUnitMob\":\"px\",\"paginateButtonPaddingUnitLink\":true,\"imageEnableZoom\":true,\"imageZoomType\":\"zoom-in\",\"captionBackgroundEnableBlur\":false,\"captionBackgroundBlurAmount\":0,\"captionBackgroundBlurAmountHover\":5,\"lightboxEdgeDistance\":10,\"lightboxEdgeDistanceTablet\":\"\",\"lightboxEdgeDistanceMobile\":\"\",\"lightboxBackgroundEnableBlur\":true,\"lightboxBackgroundBlurAmount\":5,\"lightboxBackgroundColor\":\"rgba(0,0,0,0.75)\",\"lightboxIconColor\":\"rgba(255,255,255,1)\",\"lightboxCaptionColor\":\"rgba(255,255,255,1)\",\"lightboxCaptionBackgroundColor\":\"rgba(0,0,0,1)\",\"captionLoadGoogleFonts\":false,\"captionFontFamily\":\"Default\",\"captionFontWeight\":\"\",\"captionFontStyle\":\"normal\",\"captionTransform\":\"\",\"captionDecoration\":\"none\",\"captionFontSizeType\":\"px\",\"captionFontSize\":\"\",\"captionFontSizeTab\":\"\",\"captionFontSizeMob\":\"\",\"captionLineHeightType\":\"em\",\"captionLineHeight\":\"\",\"captionLineHeightTab\":\"\",\"captionLineHeightMob\":\"\",\"loadMoreLoadGoogleFonts\":false,\"loadMoreFontFamily\":\"Default\",\"loadMoreFontWeight\":\"\",\"loadMoreFontStyle\":\"normal\",\"loadMoreTransform\":\"\",\"loadMoreDecoration\":\"none\",\"loadMoreFontSizeType\":\"px\",\"loadMoreFontSize\":\"\",\"loadMoreFontSizeTab\":\"\",\"loadMoreFontSizeMob\":\"\",\"loadMoreLineHeightType\":\"em\",\"loadMoreLineHeight\":\"\",\"loadMoreLineHeightTab\":\"\",\"loadMoreLineHeightMob\":\"\",\"lightboxLoadGoogleFonts\":false,\"lightboxFontFamily\":\"Default\",\"lightboxFontWeight\":\"\",\"lightboxFontStyle\":\"normal\",\"lightboxTransform\":\"\",\"lightboxDecoration\":\"none\",\"lightboxFontSizeType\":\"px\",\"lightboxFontSize\":\"\",\"lightboxFontSizeTab\":\"\",\"lightboxFontSizeMob\":\"\",\"lightboxLineHeightType\":\"em\",\"lightboxLineHeight\":\"\",\"lightboxLineHeightTab\":\"\",\"lightboxLineHeightMob\":\"\",\"captionBackgroundEffect\":\"none\",\"captionBackgroundEffectHover\":\"none\",\"captionBackgroundEffectAmount\":100,\"captionBackgroundEffectAmountHover\":0,\"captionColor\":\"rgba(255,255,255,1)\",\"captionColorHover\":\"rgba(255,255,255,1)\",\"captionBackgroundColor\":\"rgba(0,0,0,0.75)\",\"captionBackgroundColorHover\":\"rgba(0,0,0,0.75)\",\"overlayColor\":\"rgba(0,0,0,0)\",\"overlayColorHover\":\"rgba(0,0,0,0)\",\"captionSeparateColors\":false,\"paginateArrowDistance\":-24,\"paginateArrowDistanceUnit\":\"px\",\"paginateArrowSize\":24,\"paginateDotDistance\":8,\"paginateDotDistanceUnit\":\"px\",\"paginateLoaderSize\":18,\"paginateButtonTextColor\":\"\",\"paginateButtonTextColorHover\":\"\",\"paginateColor\":\"\",\"paginateColorHover\":\"\",\"imageBoxShadowColor\":\"\",\"imageBoxShadowHOffset\":0,\"imageBoxShadowVOffset\":0,\"imageBoxShadowBlur\":\"\",\"imageBoxShadowSpread\":\"\",\"imageBoxShadowPosition\":\"outset\",\"imageBoxShadowColorHover\":\"\",\"imageBoxShadowHOffsetHover\":0,\"imageBoxShadowVOffsetHover\":0,\"imageBoxShadowBlurHover\":\"\",\"imageBoxShadowSpreadHover\":\"\",\"imageBoxShadowPositionHover\":\"outset\",\"arrowBorderTopWidth\":4,\"arrowBorderLeftWidth\":4,\"arrowBorderRightWidth\":4,\"arrowBorderBottomWidth\":4,\"arrowBorderTopLeftRadius\":50,\"arrowBorderTopRightRadius\":50,\"arrowBorderBottomLeftRadius\":50,\"arrowBorderBottomRightRadius\":50,\"arrowBorderRadiusUnit\":\"px\",\"arrowBorderTopWidthTablet\":\"\",\"arrowBorderLeftWidthTablet\":\"\",\"arrowBorderRightWidthTablet\":\"\",\"arrowBorderBottomWidthTablet\":\"\",\"arrowBorderTopLeftRadiusTablet\":\"\",\"arrowBorderTopRightRadiusTablet\":\"\",\"arrowBorderBottomLeftRadiusTablet\":\"\",\"arrowBorderBottomRightRadiusTablet\":\"\",\"arrowBorderRadiusUnitTablet\":\"px\",\"arrowBorderTopWidthMobile\":\"\",\"arrowBorderLeftWidthMobile\":\"\",\"arrowBorderRightWidthMobile\":\"\",\"arrowBorderBottomWidthMobile\":\"\",\"arrowBorderTopLeftRadiusMobile\":\"\",\"arrowBorderTopRightRadiusMobile\":\"\",\"arrowBorderBottomLeftRadiusMobile\":\"\",\"arrowBorderBottomRightRadiusMobile\":\"\",\"arrowBorderRadiusUnitMobile\":\"px\",\"arrowBorderStyle\":\"none\",\"arrowBorderColor\":\"\",\"arrowBorderHColor\":\"\",\"btnBorderTopWidth\":\"\",\"btnBorderLeftWidth\":\"\",\"btnBorderRightWidth\":\"\",\"btnBorderBottomWidth\":\"\",\"btnBorderTopLeftRadius\":\"\",\"btnBorderTopRightRadius\":\"\",\"btnBorderBottomLeftRadius\":\"\",\"btnBorderBottomRightRadius\":\"\",\"btnBorderRadiusUnit\":\"px\",\"btnBorderTopWidthTablet\":\"\",\"btnBorderLeftWidthTablet\":\"\",\"btnBorderRightWidthTablet\":\"\",\"btnBorderBottomWidthTablet\":\"\",\"btnBorderTopLeftRadiusTablet\":\"\",\"btnBorderTopRightRadiusTablet\":\"\",\"btnBorderBottomLeftRadiusTablet\":\"\",\"btnBorderBottomRightRadiusTablet\":\"\",\"btnBorderRadiusUnitTablet\":\"px\",\"btnBorderTopWidthMobile\":\"\",\"btnBorderLeftWidthMobile\":\"\",\"btnBorderRightWidthMobile\":\"\",\"btnBorderBottomWidthMobile\":\"\",\"btnBorderTopLeftRadiusMobile\":\"\",\"btnBorderTopRightRadiusMobile\":\"\",\"btnBorderBottomLeftRadiusMobile\":\"\",\"btnBorderBottomRightRadiusMobile\":\"\",\"btnBorderRadiusUnitMobile\":\"px\",\"btnBorderStyle\":\"\",\"btnBorderColor\":\"\",\"btnBorderHColor\":\"\",\"imageBorderRadiusUnit\":\"px\",\"imageBorderTopWidthTablet\":\"\",\"imageBorderLeftWidthTablet\":\"\",\"imageBorderRightWidthTablet\":\"\",\"imageBorderBottomWidthTablet\":\"\",\"imageBorderTopLeftRadiusTablet\":\"\",\"imageBorderTopRightRadiusTablet\":\"\",\"imageBorderBottomLeftRadiusTablet\":\"\",\"imageBorderBottomRightRadiusTablet\":\"\",\"imageBorderRadiusUnitTablet\":\"px\",\"imageBorderTopWidthMobile\":\"\",\"imageBorderLeftWidthMobile\":\"\",\"imageBorderRightWidthMobile\":\"\",\"imageBorderBottomWidthMobile\":\"\",\"imageBorderTopLeftRadiusMobile\":\"\",\"imageBorderTopRightRadiusMobile\":\"\",\"imageBorderBottomLeftRadiusMobile\":\"\",\"imageBorderBottomRightRadiusMobile\":\"\",\"imageBorderRadiusUnitMobile\":\"px\",\"imageBorderStyle\":\"\",\"imageBorderHColor\":\"\",\"mainTitleBorderTopWidth\":2,\"mainTitleBorderLeftWidth\":0,\"mainTitleBorderRightWidth\":0,\"mainTitleBorderBottomWidth\":2,\"mainTitleBorderTopLeftRadius\":\"\",\"mainTitleBorderTopRightRadius\":\"\",\"mainTitleBorderBottomLeftRadius\":\"\",\"mainTitleBorderBottomRightRadius\":\"\",\"mainTitleBorderRadiusUnit\":\"px\",\"mainTitleBorderTopWidthTablet\":\"\",\"mainTitleBorderLeftWidthTablet\":\"\",\"mainTitleBorderRightWidthTablet\":\"\",\"mainTitleBorderBottomWidthTablet\":\"\",\"mainTitleBorderTopLeftRadiusTablet\":\"\",\"mainTitleBorderTopRightRadiusTablet\":\"\",\"mainTitleBorderBottomLeftRadiusTablet\":\"\",\"mainTitleBorderBottomRightRadiusTablet\":\"\",\"mainTitleBorderRadiusUnitTablet\":\"px\",\"mainTitleBorderTopWidthMobile\":\"\",\"mainTitleBorderLeftWidthMobile\":\"\",\"mainTitleBorderRightWidthMobile\":\"\",\"mainTitleBorderBottomWidthMobile\":\"\",\"mainTitleBorderTopLeftRadiusMobile\":\"\",\"mainTitleBorderTopRightRadiusMobile\":\"\",\"mainTitleBorderBottomLeftRadiusMobile\":\"\",\"mainTitleBorderBottomRightRadiusMobile\":\"\",\"mainTitleBorderRadiusUnitMobile\":\"px\",\"mainTitleBorderStyle\":\"\",\"mainTitleBorderColor\":\"\",\"mainTitleBorderHColor\":\"\"}, '.uagb-block-39ff3b72', {\"lazy\":true,\"slidesPerView\":1,\"navigation\":{\"nextEl\":\".uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .swiper-button-next\",\"prevEl\":\".uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .swiper-button-prev\"},\"keyboard\":{\"enabled\":true}}, [] );\n\t\t\t\t\t\t\t\tUAGBImageGalleryMasonry.initByOffset( element, isotope );\n\t\t\t\t\t\t\t}, 500 );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\t\t\t\twindow.addEventListener( 'DOMContentLoaded', () => {\n\t\t\t\t\tconst blockScope = document.querySelector( '.uagb-block-39ff3b72' );\n\t\t\t\t\tif ( ! blockScope ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\tblockScope.addEventListener('keydown', (event) => {\n\t\t\t\t\t\tif ( 13 === event.keyCode || 32 === event.keyCode ) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tblockScope.click();\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\n\t\t\t\t\tlet lightboxSwiper = null;\n\t\t\t\t\tlet thumbnailSwiper = null;\n\n\t\t\t\t\t\t\t\t\t\tlet lightboxSettings = {\"lazy\":true,\"slidesPerView\":1,\"navigation\":{\"nextEl\":\".uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .swiper-button-next\",\"prevEl\":\".uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .swiper-button-prev\"},\"keyboard\":{\"enabled\":true}};\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlightboxSwiper = new Swiper( \".uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .spectra-image-gallery__control-lightbox--main\",\n\t\t\t\t\t\t{\"lazy\":true,\"slidesPerView\":1,\"navigation\":{\"nextEl\":\".uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .swiper-button-next\",\"prevEl\":\".uagb-block-39ff3b72+.spectra-image-gallery__control-lightbox .swiper-button-prev\"},\"keyboard\":{\"enabled\":true}}\t\t\t\t\t);\n\t\t\t\t\tloadLightBoxImages( blockScope, lightboxSwiper, null, {\"block_id\":\"39ff3b72\",\"classMigrate\":true,\"readyToRender\":true,\"mediaGallery\":[{\"sizes\":{\"thumbnail\":{\"height\":150,\"width\":150,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-150x150.png\",\"orientation\":\"landscape\"},\"medium\":{\"height\":152,\"width\":300,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-300x152.png\",\"orientation\":\"landscape\"},\"large\":{\"height\":517,\"width\":1024,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-1024x517.png\",\"orientation\":\"landscape\"},\"full\":{\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project.png\",\"height\":1110,\"width\":2198,\"orientation\":\"landscape\"},\"cmplz_banner_image\":{\"height\":100,\"width\":350,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project-350x100.png\",\"orientation\":\"landscape\"}},\"mime\":\"image\/png\",\"type\":\"image\",\"subtype\":\"png\",\"id\":17350,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-creating-a-new-project.png\",\"alt\":\"Creating a new project in PTC\",\"link\":\"https:\/\/ptc.wpml.org\/?attachment_id=17350\",\"caption\":\"Creating a new project\"},{\"sizes\":{\"thumbnail\":{\"height\":150,\"width\":150,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-150x150.png\",\"orientation\":\"landscape\"},\"medium\":{\"height\":176,\"width\":300,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-300x176.png\",\"orientation\":\"landscape\"},\"large\":{\"height\":601,\"width\":1024,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-1024x601.png\",\"orientation\":\"landscape\"},\"full\":{\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration.png\",\"height\":1067,\"width\":1817,\"orientation\":\"landscape\"},\"cmplz_banner_image\":{\"height\":100,\"width\":350,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration-350x100.png\",\"orientation\":\"landscape\"}},\"mime\":\"image\/png\",\"type\":\"image\",\"subtype\":\"png\",\"id\":17351,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-selecting-api-integration.png\",\"alt\":\"Choosing API integration in PTC setup\",\"link\":\"https:\/\/ptc.wpml.org\/?attachment_id=17351\",\"caption\":\"Choosing API Integration\"},{\"sizes\":{\"thumbnail\":{\"height\":150,\"width\":150,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-150x150.png\",\"orientation\":\"landscape\"},\"medium\":{\"height\":135,\"width\":300,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-300x135.png\",\"orientation\":\"landscape\"},\"large\":{\"height\":459,\"width\":1024,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-1024x459.png\",\"orientation\":\"landscape\"},\"full\":{\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-scaled.png\",\"height\":1148,\"width\":2560,\"orientation\":\"landscape\"},\"cmplz_banner_image\":{\"height\":100,\"width\":350,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-350x100.png\",\"orientation\":\"landscape\"}},\"mime\":\"image\/png\",\"type\":\"image\",\"subtype\":\"png\",\"id\":17352,\"url\":\"https:\/\/ptc.wpml.org\/wp-content\/uploads\/2026\/01\/ptc-settings-manage-api-tokens-scaled.png\",\"alt\":\"API token under Settings u2192 Manage API tokens\",\"link\":\"https:\/\/ptc.wpml.org\/?attachment_id=17352\",\"caption\":\"API token under Settings u2192 Manage API tokens\"}],\"mediaIDs\":[17350,17351,17352],\"feedLayout\":\"masonry\",\"galleryImageSize\":\"full\",\"imageClickEvent\":\"lightbox\",\"captionVisibility\":\"always\",\"captionDisplayType\":\"bar-outside\",\"imageCaptionAlignment\":\"bottom center\",\"imageCaptionAlignment01\":\"bottom\",\"columnsDesk\":2,\"columnsTab\":1,\"columnsMob\":1,\"imageBorderTopWidth\":1,\"imageBorderLeftWidth\":1,\"imageBorderRightWidth\":1,\"imageBorderBottomWidth\":1,\"imageBorderTopLeftRadius\":20,\"imageBorderTopRightRadius\":20,\"imageBorderBottomLeftRadius\":20,\"imageBorderBottomRightRadius\":20,\"imageBorderColor\":\"rgba(206,191,227,0.18)\",\"wpmlTranslatedContent\":\"1\",\"tileSize\":0,\"focusList\":[],\"focusListObject\":[],\"imageDisplayCaption\":true,\"galleryImageSizeTablet\":\"large\",\"galleryImageSizeMobile\":\"medium\",\"disableLazyLoad\":false,\"lightboxDisplayCaptions\":false,\"lightboxThumbnails\":false,\"lightboxDisplayCount\":false,\"lightboxCloseIcon\":\"xmark\",\"lightboxCaptionHeight\":50,\"lightboxCaptionHeightTablet\":\"\",\"lightboxCaptionHeightMobile\":\"\",\"lightboxIconSize\":24,\"lightboxIconSizeTablet\":\"\",\"lightboxIconSizeMobile\":\"\",\"imageCaptionAlignment02\":\"center\",\"imageDefaultCaption\":\"No Caption\",\"captionPaddingTop\":8,\"captionPaddingRight\":8,\"captionPaddingBottom\":8,\"captionPaddingLeft\":8,\"captionPaddingTopTab\":8,\"captionPaddingRightTab\":8,\"captionPaddingBottomTab\":8,\"captionPaddingLeftTab\":8,\"captionPaddingTopMob\":8,\"captionPaddingRightMob\":8,\"captionPaddingBottomMob\":8,\"captionPaddingLeftMob\":8,\"captionPaddingUnit\":\"px\",\"captionPaddingUnitTab\":\"px\",\"captionPaddingUnitMob\":\"px\",\"captionPaddingUnitLink\":true,\"captionGap\":0,\"captionGapUnit\":\"px\",\"gridImageGap\":8,\"gridImageGapTab\":\"\",\"gridImageGapMob\":\"\",\"gridImageGapUnit\":\"px\",\"gridImageGapUnitTab\":\"px\",\"gridImageGapUnitMob\":\"px\",\"feedMarginTop\":\"\",\"feedMarginRight\":\"\",\"feedMarginBottom\":\"\",\"feedMarginLeft\":\"\",\"feedMarginTopTab\":\"\",\"feedMarginRightTab\":\"\",\"feedMarginBottomTab\":\"\",\"feedMarginLeftTab\":\"\",\"feedMarginTopMob\":\"\",\"feedMarginRightMob\":\"\",\"feedMarginBottomMob\":\"\",\"feedMarginLeftMob\":\"\",\"feedMarginUnit\":\"px\",\"feedMarginUnitTab\":\"px\",\"feedMarginUnitMob\":\"px\",\"feedMarginUnitLink\":true,\"carouselStartAt\":0,\"carouselSquares\":false,\"carouselLoop\":true,\"carouselAutoplay\":true,\"carouselAutoplaySpeed\":2000,\"carouselPauseOnHover\":true,\"carouselTransitionSpeed\":500,\"gridPages\":1,\"gridPageNumber\":1,\"feedPagination\":false,\"paginateUseArrows\":true,\"paginateUseDots\":true,\"paginateUseLoader\":true,\"paginateLimit\":9,\"paginateButtonAlign\":\"center\",\"paginateButtonText\":\"Load More Images\",\"paginateButtonPaddingTop\":\"\",\"paginateButtonPaddingRight\":\"\",\"paginateButtonPaddingBottom\":\"\",\"paginateButtonPaddingLeft\":\"\",\"paginateButtonPaddingTopTab\":\"\",\"paginateButtonPaddingRightTab\":\"\",\"paginateButtonPaddingBottomTab\":\"\",\"paginateButtonPaddingLeftTab\":\"\",\"paginateButtonPaddingTopMob\":\"\",\"paginateButtonPaddingRightMob\":\"\",\"paginateButtonPaddingBottomMob\":\"\",\"paginateButtonPaddingLeftMob\":\"\",\"paginateButtonPaddingUnit\":\"px\",\"paginateButtonPaddingUnitTab\":\"px\",\"paginateButtonPaddingUnitMob\":\"px\",\"paginateButtonPaddingUnitLink\":true,\"imageEnableZoom\":true,\"imageZoomType\":\"zoom-in\",\"captionBackgroundEnableBlur\":false,\"captionBackgroundBlurAmount\":0,\"captionBackgroundBlurAmountHover\":5,\"lightboxEdgeDistance\":10,\"lightboxEdgeDistanceTablet\":\"\",\"lightboxEdgeDistanceMobile\":\"\",\"lightboxBackgroundEnableBlur\":true,\"lightboxBackgroundBlurAmount\":5,\"lightboxBackgroundColor\":\"rgba(0,0,0,0.75)\",\"lightboxIconColor\":\"rgba(255,255,255,1)\",\"lightboxCaptionColor\":\"rgba(255,255,255,1)\",\"lightboxCaptionBackgroundColor\":\"rgba(0,0,0,1)\",\"captionLoadGoogleFonts\":false,\"captionFontFamily\":\"Default\",\"captionFontWeight\":\"\",\"captionFontStyle\":\"normal\",\"captionTransform\":\"\",\"captionDecoration\":\"none\",\"captionFontSizeType\":\"px\",\"captionFontSize\":\"\",\"captionFontSizeTab\":\"\",\"captionFontSizeMob\":\"\",\"captionLineHeightType\":\"em\",\"captionLineHeight\":\"\",\"captionLineHeightTab\":\"\",\"captionLineHeightMob\":\"\",\"loadMoreLoadGoogleFonts\":false,\"loadMoreFontFamily\":\"Default\",\"loadMoreFontWeight\":\"\",\"loadMoreFontStyle\":\"normal\",\"loadMoreTransform\":\"\",\"loadMoreDecoration\":\"none\",\"loadMoreFontSizeType\":\"px\",\"loadMoreFontSize\":\"\",\"loadMoreFontSizeTab\":\"\",\"loadMoreFontSizeMob\":\"\",\"loadMoreLineHeightType\":\"em\",\"loadMoreLineHeight\":\"\",\"loadMoreLineHeightTab\":\"\",\"loadMoreLineHeightMob\":\"\",\"lightboxLoadGoogleFonts\":false,\"lightboxFontFamily\":\"Default\",\"lightboxFontWeight\":\"\",\"lightboxFontStyle\":\"normal\",\"lightboxTransform\":\"\",\"lightboxDecoration\":\"none\",\"lightboxFontSizeType\":\"px\",\"lightboxFontSize\":\"\",\"lightboxFontSizeTab\":\"\",\"lightboxFontSizeMob\":\"\",\"lightboxLineHeightType\":\"em\",\"lightboxLineHeight\":\"\",\"lightboxLineHeightTab\":\"\",\"lightboxLineHeightMob\":\"\",\"captionBackgroundEffect\":\"none\",\"captionBackgroundEffectHover\":\"none\",\"captionBackgroundEffectAmount\":100,\"captionBackgroundEffectAmountHover\":0,\"captionColor\":\"rgba(255,255,255,1)\",\"captionColorHover\":\"rgba(255,255,255,1)\",\"captionBackgroundColor\":\"rgba(0,0,0,0.75)\",\"captionBackgroundColorHover\":\"rgba(0,0,0,0.75)\",\"overlayColor\":\"rgba(0,0,0,0)\",\"overlayColorHover\":\"rgba(0,0,0,0)\",\"captionSeparateColors\":false,\"paginateArrowDistance\":-24,\"paginateArrowDistanceUnit\":\"px\",\"paginateArrowSize\":24,\"paginateDotDistance\":8,\"paginateDotDistanceUnit\":\"px\",\"paginateLoaderSize\":18,\"paginateButtonTextColor\":\"\",\"paginateButtonTextColorHover\":\"\",\"paginateColor\":\"\",\"paginateColorHover\":\"\",\"imageBoxShadowColor\":\"\",\"imageBoxShadowHOffset\":0,\"imageBoxShadowVOffset\":0,\"imageBoxShadowBlur\":\"\",\"imageBoxShadowSpread\":\"\",\"imageBoxShadowPosition\":\"outset\",\"imageBoxShadowColorHover\":\"\",\"imageBoxShadowHOffsetHover\":0,\"imageBoxShadowVOffsetHover\":0,\"imageBoxShadowBlurHover\":\"\",\"imageBoxShadowSpreadHover\":\"\",\"imageBoxShadowPositionHover\":\"outset\",\"arrowBorderTopWidth\":4,\"arrowBorderLeftWidth\":4,\"arrowBorderRightWidth\":4,\"arrowBorderBottomWidth\":4,\"arrowBorderTopLeftRadius\":50,\"arrowBorderTopRightRadius\":50,\"arrowBorderBottomLeftRadius\":50,\"arrowBorderBottomRightRadius\":50,\"arrowBorderRadiusUnit\":\"px\",\"arrowBorderTopWidthTablet\":\"\",\"arrowBorderLeftWidthTablet\":\"\",\"arrowBorderRightWidthTablet\":\"\",\"arrowBorderBottomWidthTablet\":\"\",\"arrowBorderTopLeftRadiusTablet\":\"\",\"arrowBorderTopRightRadiusTablet\":\"\",\"arrowBorderBottomLeftRadiusTablet\":\"\",\"arrowBorderBottomRightRadiusTablet\":\"\",\"arrowBorderRadiusUnitTablet\":\"px\",\"arrowBorderTopWidthMobile\":\"\",\"arrowBorderLeftWidthMobile\":\"\",\"arrowBorderRightWidthMobile\":\"\",\"arrowBorderBottomWidthMobile\":\"\",\"arrowBorderTopLeftRadiusMobile\":\"\",\"arrowBorderTopRightRadiusMobile\":\"\",\"arrowBorderBottomLeftRadiusMobile\":\"\",\"arrowBorderBottomRightRadiusMobile\":\"\",\"arrowBorderRadiusUnitMobile\":\"px\",\"arrowBorderStyle\":\"none\",\"arrowBorderColor\":\"\",\"arrowBorderHColor\":\"\",\"btnBorderTopWidth\":\"\",\"btnBorderLeftWidth\":\"\",\"btnBorderRightWidth\":\"\",\"btnBorderBottomWidth\":\"\",\"btnBorderTopLeftRadius\":\"\",\"btnBorderTopRightRadius\":\"\",\"btnBorderBottomLeftRadius\":\"\",\"btnBorderBottomRightRadius\":\"\",\"btnBorderRadiusUnit\":\"px\",\"btnBorderTopWidthTablet\":\"\",\"btnBorderLeftWidthTablet\":\"\",\"btnBorderRightWidthTablet\":\"\",\"btnBorderBottomWidthTablet\":\"\",\"btnBorderTopLeftRadiusTablet\":\"\",\"btnBorderTopRightRadiusTablet\":\"\",\"btnBorderBottomLeftRadiusTablet\":\"\",\"btnBorderBottomRightRadiusTablet\":\"\",\"btnBorderRadiusUnitTablet\":\"px\",\"btnBorderTopWidthMobile\":\"\",\"btnBorderLeftWidthMobile\":\"\",\"btnBorderRightWidthMobile\":\"\",\"btnBorderBottomWidthMobile\":\"\",\"btnBorderTopLeftRadiusMobile\":\"\",\"btnBorderTopRightRadiusMobile\":\"\",\"btnBorderBottomLeftRadiusMobile\":\"\",\"btnBorderBottomRightRadiusMobile\":\"\",\"btnBorderRadiusUnitMobile\":\"px\",\"btnBorderStyle\":\"\",\"btnBorderColor\":\"\",\"btnBorderHColor\":\"\",\"imageBorderRadiusUnit\":\"px\",\"imageBorderTopWidthTablet\":\"\",\"imageBorderLeftWidthTablet\":\"\",\"imageBorderRightWidthTablet\":\"\",\"imageBorderBottomWidthTablet\":\"\",\"imageBorderTopLeftRadiusTablet\":\"\",\"imageBorderTopRightRadiusTablet\":\"\",\"imageBorderBottomLeftRadiusTablet\":\"\",\"imageBorderBottomRightRadiusTablet\":\"\",\"imageBorderRadiusUnitTablet\":\"px\",\"imageBorderTopWidthMobile\":\"\",\"imageBorderLeftWidthMobile\":\"\",\"imageBorderRightWidthMobile\":\"\",\"imageBorderBottomWidthMobile\":\"\",\"imageBorderTopLeftRadiusMobile\":\"\",\"imageBorderTopRightRadiusMobile\":\"\",\"imageBorderBottomLeftRadiusMobile\":\"\",\"imageBorderBottomRightRadiusMobile\":\"\",\"imageBorderRadiusUnitMobile\":\"px\",\"imageBorderStyle\":\"\",\"imageBorderHColor\":\"\",\"mainTitleBorderTopWidth\":2,\"mainTitleBorderLeftWidth\":0,\"mainTitleBorderRightWidth\":0,\"mainTitleBorderBottomWidth\":2,\"mainTitleBorderTopLeftRadius\":\"\",\"mainTitleBorderTopRightRadius\":\"\",\"mainTitleBorderBottomLeftRadius\":\"\",\"mainTitleBorderBottomRightRadius\":\"\",\"mainTitleBorderRadiusUnit\":\"px\",\"mainTitleBorderTopWidthTablet\":\"\",\"mainTitleBorderLeftWidthTablet\":\"\",\"mainTitleBorderRightWidthTablet\":\"\",\"mainTitleBorderBottomWidthTablet\":\"\",\"mainTitleBorderTopLeftRadiusTablet\":\"\",\"mainTitleBorderTopRightRadiusTablet\":\"\",\"mainTitleBorderBottomLeftRadiusTablet\":\"\",\"mainTitleBorderBottomRightRadiusTablet\":\"\",\"mainTitleBorderRadiusUnitTablet\":\"px\",\"mainTitleBorderTopWidthMobile\":\"\",\"mainTitleBorderLeftWidthMobile\":\"\",\"mainTitleBorderRightWidthMobile\":\"\",\"mainTitleBorderBottomWidthMobile\":\"\",\"mainTitleBorderTopLeftRadiusMobile\":\"\",\"mainTitleBorderTopRightRadiusMobile\":\"\",\"mainTitleBorderBottomLeftRadiusMobile\":\"\",\"mainTitleBorderBottomRightRadiusMobile\":\"\",\"mainTitleBorderRadiusUnitMobile\":\"px\",\"mainTitleBorderStyle\":\"\",\"mainTitleBorderColor\":\"\",\"mainTitleBorderHColor\":\"\"}, thumbnailSwiper );\n\t\t\t\t\t\t\t\tconst regexCustomURL = new RegExp( '^((http|https):\/\/)(www.)?[a-zA-Z0-9@:%._\\+~#?&\/\/=\\-]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%._\\+~#?&\/\/=]*)$' );\n\t\t\tconst customLinks = {};\n\t\t\tconst customLinksBehaviour = {};\n\n\t\t\tconst getCustomURL = ( caption ) => {\n\t\t\t\tif ( ! customLinks ) {\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t\tconst imageID = parseInt( caption.getAttribute( 'data-spectra-gallery-image-id' ) );\n\t\t\t\treturn ( regexCustomURL.test( customLinks[ imageID ] ) ? customLinks[ imageID ] : undefined );\n\t\t\t}\n\n\t\t\tconst getCustomLinkBehaviour = (caption) => {\n\t\t\t\tif (!customLinksBehaviour) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tconst imageId = parseInt(caption.getAttribute('data-spectra-gallery-image-id'));\n\t\t\t\treturn !(customLinksBehaviour[imageId] === true);\n\t\t\t};\n\n\t\t\tconst captions = lightboxSwiper.el.querySelectorAll( '.spectra-image-gallery__control-lightbox--caption' );\n\t\t\tfor ( let i = 0; i < captions.length; i++ ) {\n\t\t\t\tconst customURL = getCustomURL( captions[ i ] );\n\t\t\t\tif ( customURL ) {\n\t\t\t\t\tconst anchor = document.createElement( 'a' );\n\t\t\t\t\tanchor.target = getCustomLinkBehaviour( captions[ i ] ) ? '_blank' : '_self';\n\t\t\t\t\tanchor.rel = 'noopener noreferrer';\n\t\t\t\t\tanchor.href = customURL;\n\t\t\t\t\tanchor.innerHTML = captions[ i ].innerHTML;\n\t\t\t\t\tcaptions[ i ].textContent = '';\n\t\t\t\t\tcaptions[ i ].appendChild( anchor );\n\t\t\t\t}\n\t\t\t}\n\t\t\t\t\t\t} );\n\t\t\tjQuery(document).ready(function(){if(window.matchMedia&&window.matchMedia(\"(hover:none)\").matches){jQuery(\".wp-block-uagb-image-gallery.uagb-block-39ff3b72\").addClass(\"spectra-touch-device\");}});window.addEventListener( 'load', function() {\n\tUAGBButtonChild.init( '.uagb-block-bdaafad6' );\n});\n });\";s:18:\"current_block_list\";a:17:{i:0;s:14:\"uagb\/container\";i:2;s:14:\"core\/paragraph\";i:3;s:9:\"core\/list\";i:4;s:14:\"core\/list-item\";i:5;s:11:\"core\/spacer\";i:7;s:12:\"core\/heading\";i:8;s:12:\"uagb\/buttons\";i:9;s:18:\"uagb\/buttons-child\";i:10;s:18:\"uagb\/image-gallery\";i:13;s:21:\"uagb\/advanced-heading\";i:14;s:27:\"kevinbatdorf\/code-block-pro\";i:15;s:11:\"core\/search\";i:16;s:10:\"core\/group\";i:17;s:17:\"core\/latest-posts\";i:18;s:20:\"core\/latest-comments\";i:19;s:13:\"core\/archives\";i:20;s:15:\"core\/categories\";}s:8:\"uag_flag\";b:1;s:11:\"uag_version\";i:1777272262;s:6:\"gfonts\";a:0:{}s:10:\"gfonts_url\";s:0:\"\";s:12:\"gfonts_files\";a:0:{}s:14:\"uag_faq_layout\";b:0;}"]},"uagb_featured_image_src":[],"uagb_author_info":{"display_name":"Kathy Banach","author_link":"https:\/\/ptc.wpml.org\/es\/author\/"},"uagb_comment_info":0,"uagb_excerpt":"Aprenda a usar la API de PTC para traducir contenido din\u00e1mico en su aplicaci\u00f3n Ruby on Rails (RoR). Esto incluye entradas del blog, informaci\u00f3n de productos y cualquier texto almacenado en su base de datos. A continuaci\u00f3n, le guiaremos por el proceso de traducci\u00f3n de contenido din\u00e1mico en aplicaciones Rails en dos partes: Antes de&hellip;","_links":{"self":[{"href":"https:\/\/ptc.wpml.org\/es\/wp-json\/wp\/v2\/documentation\/17357","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ptc.wpml.org\/es\/wp-json\/wp\/v2\/documentation"}],"about":[{"href":"https:\/\/ptc.wpml.org\/es\/wp-json\/wp\/v2\/types\/documentation"}],"wp:attachment":[{"href":"https:\/\/ptc.wpml.org\/es\/wp-json\/wp\/v2\/media?parent=17357"}],"wp:term":[{"taxonomy":"resources","embeddable":true,"href":"https:\/\/ptc.wpml.org\/es\/wp-json\/wp\/v2\/resources?post=17357"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}