ONLYOFFICE Docs 9.0 para desenvolvedores: atualizações de API

2 julho 2025Por Klaibson

O último release do ONLYOFFICE Docs está aqui, repleto de atualizações que oferecem mais funcionalidades, melhor personalização e desempenho aprimorado. Se você é um desenvolvedor ou integrador que busca aproveitar as APIs aprimoradas, há muito o que explorar nesta versão. Confira todos os detalhes abaixo.

ONLYOFFICE Docs 9.0 para desenvolvedores: atualizações de API

Visualizador de Diagramas

O recém-introduzido Visualizador de Diagramas está disponível para web, desktop e dispositivos móveis. Permite abrir arquivos de diagrama sem a necessidade de aplicativos de terceiros.

Onde encontrar na API: o tipo de documento do diagrama é adicionado ao parâmetro documentType.

ONLYOFFICE Docs 9.0 para desenvolvedores: atualizações de API

Suporte para novos formatos de arquivo

O ONLYOFFICE continua expandindo sua usabilidade com suporte a outros formatos de arquivo. Na versão 9.0, é possível abrir arquivos Markdown e OpenDocument Graphic para visualização.

Onde encontrar na API: abertura adicionada para os formatos odgmd.

Além disso, com o lançamento do Visualizador de Diagramas, adicionamos a conversão dos formatos vsdm, vsdx, vssm, vssx, vstm e vstx. Veja a API

ONLYOFFICE Docs 9.0 para desenvolvedores: atualizações de API

Opções de personalização expandidas

A personalização atingiu novos patamares na versão 9.0, permitindo que seus usuários finais personalizem sua experiência no ONLYOFFICE exatamente como precisam.

Novos temas de IU

Dois novos temas, Claro Moderno e Escuro Moderno, são apresentados para otimizar a aparência de cada editor.

Onde encontrar na API: Os IDs de tema theme-white e theme-night são adicionados ao parâmetro editorConfig.customization.uiTheme.

const config = {
  editorConfig: {
    customization: {
...
      uiTheme: "theme-white",
...

ONLYOFFICE Docs 9.0 para desenvolvedores: atualizações de API

Seleção de tamanho de fonte para a interface do usuário em chinês simplificado

O novo parâmetro garante o dimensionamento preciso da fonte em layouts em chinês simplificado, oferecendo a flexibilidade de usar estilos chineses ocidentais ou tradicionais.

Onde encontrar na API: Parâmetro editorConfig.customization.forceWesternFontSize, o valor padrão é falso.

const config = {
  editorConfig: {
    customization: {
....
 forceWesternFontSize: false,
...

Ocultando avatares de usuários

O novo parâmetro permite que você alterne os avatares do usuário no cabeçalho do editor, ajudando a criar uma interface limpa e sem distrações.

Onde encontrar na API: Parâmetro editorConfig.customization.layout.header.user, o valor padrão é verdadeiro.

const config = {
  editorConfig: {
    customization: {
...
layout: {
        header: {
          editMode: true,
          save: true,
          user: true,
          users: true,
        },

Aumento de desempenho com pré-carregamento

A partir da versão 9.0, você pode pré-carregar ativos estáticos (HTML, CSS, JS, fontes) no cache do navegador antes de abrir um arquivo para acelerar o carregamento inicial do editor de documentos. Veja a API

Duas opções estão disponíveis:

1) Usando o ?preload=placeholder parameter

<div id="placeholder"></div>

<script type="text/javascript" src="https://documentserver/web-apps/apps/api/documents/api.js?preload=placeholder"></script>

2) Inserindo manualmente um iframe de pré-carregamento

<iframe src="https://documentserver/web-apps/apps/api/documents/preload.html" style="display:none;"></iframe>

Get the latest version of ONLYOFFICE Docs Developer:

BAIXE AGORA

Melhorias de API para plugins e macros

Botões personalizados para Controles de Conteúdo. Utilize a classe Asc.ButtonContentControl para criar botões exclusivos para seus plugins. Defina ações usando o método attachOnClick e adicione seus próprios ícones para aprimorar a funcionalidade. Veja a API

(function(window){
  window.Asc.plugin.init = function()
  {
    let button = new Asc.ButtonContentControl();
    button.icons = '/resources/check%scale%(default).png';
    button.attachOnClick(function(contentControlId){
      Asc.plugin.executeMethod("RemoveContentControl", [contentControlId]);
    });
 
    button = new Asc.ButtonContentControl();
    button.icons = '/resources/close%scale%(default).png';
    button.attachOnClick(function(contentControlId){
      Asc.plugin.executeMethod("RemoveContentControls", [[{"InternalId": contentControlId}]]);
    });
  }
})(window);

Definir o slide ativo pelo seu índice. Vá para qualquer slide facilmente nas apresentações usando o novo método GoToSlide.

expression.GoToSlide(slideNumber);

Elemento da lista de controle de conteúdo. A introdução do ContentControlListElement a enumeração torna o gerenciamento de controles de conteúdo em documentos ainda mais simples.

Cálculos assíncronos. Gerencie qualquer solicitação dentro do corpo de uma custom function criado usando macros.

(function () {
  /**
   * World Bank indicator value for a specific year.
   * @customfunction

   * @param   {string} country   ISO-3 code, e.g. "TUR"
   * @param   {string} indicator Indicator code, e.g. "SP.POP.TOTL"
   * @param   {number} year      Four-digit year, e.g. 2024
   * @returns {any}             Numeric value or #N/A
   *
   * @example =WB("TUR","SP.POP.TOTL",2024)
   */
  async function WB(country, indicator, year) {
    // Build URL (World Bank allows CORS)
    const url =
      `https://api.worldbank.org/v2/country/${country}/indicator/${indicator}` +
      `?format=json&per_page=20000`;

    try {
      const r = await fetch(url);
      const [meta, data] = await r.json();

      // Find the row for the requested year
      const row = data.find((v) => v.date === year.toString());
      if (!row || row.value == null) return "#N/A";

      return row.value;               // resolves the Promise
    } catch (e) {
      return "#ERROR";
    }
  }

  // Register the function so it becomes a sheet formula
  Api.AddCustomFunction(WB);
})();

Novas amostras

Com a atualização mais recente da documentação da API, incluímos ainda mais exemplos prontos para uso para o Document Builder e macros, tornando seu processo de desenvolvimento mais tranquilo e eficiente.

Estrutura

Macros

Novos exemplos de macro estão disponíveis para todos os tipos de editores, por exemplo:

Veja todas as amostras de macros

Office API

Para o Office JavaScript API, adicionamos muitos métodos novos para a versão 9.0, incluindo aqueles para:

  • Controles de Conteúdo
  • XML Personalizado
  • Formulários
  • Propriedades Personalizadas
  • Núcleo
  • Intervalo
  • Desenho
  • Apresentação
  • Página de Notas

Confira a lista completa de novos métodos

Crie sua conta gratuita no ONLYOFFICE

Visualize, edite e colabore em documentos, planilhas, slides, formulários e arquivos PDF online.