API-Server

PT | EN

O programa Holyrics disponibiliza uma interface de comunicação para receber requisições tanto pela rede local quanto pela internet.
Ao realizar uma requisição, a implementação padrão desta documentação será utilizada.
Mas também é possível implementar um método JavaScript no próprio programa Holyrics para que as requisições sejam redirecionadas para esse método e executar ações customizadas conforme necessidade.
Utilize o método POST e o Content-Type: application/json para realizar as requisições.
É necessário adicionar na URL da requisição o parâmetro token, que é criado nas configurações API Server, opção 'gerenciar permissões'.
Você pode criar múltiplos tokens e definir as permissões de cada token.

Para acessar as configurações API Server:
Menu arquivo > Configurações > API Server

Exemplo de requisição pela rede local

Você pode passar o token na URL para realizar a requisição.
Porém por se tratar de conexão local sem SSL, se você quiser uma maior segurança, utilize o método "hash" para enviar as requisições sem precisar informar o token de acesso na requisição.

URL padrão - Utilizando token

http://[IP]:[PORT]/api/{action}?token=abcdef

URL padrão - Utilizando hash

http://[IP]:[PORT]/api/{action}?dtoken=xyz123&sid=456&rid=3

dtoken
hash gerado para cada requisição a partir de um 'nonce' (token temporário) obtido pelo servidor

sid
ID da sessão, obtido junto com o nonce

rid: request id
Enviado pelo cliente, um número positivo que deve ser sempre maior do que o utilizado na requisição anterior

Requisição

Utilizando token
curl -X 'POST' \
  'http://ip:port/api/GetCPInfo?token=abcdef' \
  -H 'Content-Type: application/json' \
  -d '{}'
Utilizando hash
nonce = '1a2b3c';  <- token temporário
rid   = 4;         <- id da requisição
token = 'abcdef';  <- token de acesso
data  = '{}';      <- conteúdo da requisição

dtoken é o resumo sha256 da concatenação das informações da requisição conforme exemplo
dtoken = sha256(nonce + ':' + rid + ':' + token + ':' + data);
resultado: f3391f69cbe03940bd0d4a63ee191092aab2f3573f56b410a9cf94da05d4cdb5

curl -X 'POST' \
  'http://ip:port/api/GetCPInfo?sid=abc&rid=4&dtoken=f3391f69cbe03940bd0d4a63ee191092aab2f3573f56b410a9cf94da05d4cdb5' \
  -H 'Content-Type: application/json' \
  -d '{}'

Resposta

{
    "status": "ok",
    "data": {
        "text": "",
        "show": false,
        "display_ahead": false,
        "alert_text": "",
        "alert_show": false,
        "countdown_show": false,
        "countdown_time": 0
    }
}

Requisição

Utilizando token
curl -X 'POST' \
  'http://ip:port/api/SetTextCP?token=abcdef' \
  -H 'Content-Type: application/json' \
  -d '{"text": "Example", "show": true, "display_ahead": true}'
Utilizando hash
nonce = '1a2b3c';
rid   = 5;
token = 'abcdef';
data  = '{"text": "Example", "show": true, "display_ahead": true}';

dtoken = sha256(nonce + ':' + rid + ':' + token + ':' + data);
resultado: 02a7789759694c535cd032489bf101110837c972d76cec51c7ad7e797696749d

curl -X 'POST' \
  'http://ip:port/api/SetTextCP?sid=abc&rid=5&dtoken=02a7789759694c535cd032489bf101110837c972d76cec51c7ad7e797696749d' \
  -H 'Content-Type: application/json' \
  -d '{"text": "Example", "show": true, "display_ahead": true}'

Resposta

{ "status": "ok" }

No caso de erro, status irá retornar error, exemplo:

{
    "status": "error",
    "error": "invalid token"
}

Como obter um nonce

Utilize a ação 'Auth' sem incluir parâmetros na URL para obter um nonce

Requisição
http://ip:port/api/Auth

Resposta
{
    "status": "ok",
    "data": {
        "sid": "u80fbjbcknir",
        "nonce":"b58ba4f605bed27c40a20be53ee3cf3d"
    }
}

Utilize a ação 'Auth' novamente para se autenticar, passando os parâmetros na URL

nonce = 'b58ba4f605bed27c40a20be53ee3cf3d';
rid   = 0;       <- deve ser zero para autenticação
token = '1234';  <- token de acesso
data  = 'auth';  <- deve ser 'auth' para autenticação

dtoken = sha256(nonce + ':' + rid + ':' + token + ':' + data);
resultado: 5d632009dfde5e9771b4f98f1b28c88ac2f73ae1f9d81b62a9af241a304c4d7a

http://ip:port/api/Auth?sid=u80fbjbcknir&rid=0&dtoken=5d632009dfde5e9771b4f98f1b28c88ac2f73ae1f9d81b62a9af241a304c4d7a

Resposta
{ "status": "ok" }

Exemplo de requisição pela rede internet

Utilize o valor API_KEY disponível nas configurações do API Server para realizar as requisições no endpoint do servidor do Holyrics juntamente com o token de acesso.

Requisição - send

Apenas envia a requisição sem aguardar retorno

URL padrão

https://api.holyrics.com.br/send/{action}

Requisição

curl -X 'POST' \
  'https://api.holyrics.com.br/send/SetTextCP' \
  -H 'Content-Type: application/json' \
  -H 'api_key: API_KEY' \
  -H 'token: abcdef' \
  -d '{"text": "Example", "show": true, "display_ahead": true}'

Resposta

{ "status": "ok" }

O status das requisições send informa apenas se a requisição foi enviada ao Holyrics aberto no computador.


Requisição - request

Envia a requisição e aguarda a resposta

URL padrão

https://api.holyrics.com.br/request/{action}

Requisição

curl -X 'POST' \
  'https://api.holyrics.com.br/request/GetCPInfo' \
  -H 'Content-Type: application/json' \
  -H 'api_key: API_KEY' \
  -H 'token: abcdef' \
  -d '{}'

Resposta

{
  "status": "ok",           <-  status do envio da requisição ao Holyrics
  "response_status": "ok",  <-  status da resposta da requisição enviada
  "response": {             <-  resposta da requisição
    "status": "ok",
    "data": {
        "text": "Example",
        "show": true,
        "display_ahead": true,
        "alert_text": "",
        "alert_show": false,
        "countdown_show": false,
        "countdown_time": 0
    }
  }
}

Exemplos de erro no envio da requisição:

{
    "status": "error",
    "error": {
        "code": 9,
        "key": "device_disconnected",
        "message": "Device disconnected"
    }
}
{
    "status": "error",
    "error": {
        "code": 403,
        "key": "invalid_api_key",
        "message": "Invalid API Key"
    }
}

Exemplos de erro na resposta da requisição:

{
  "status": "ok",           <-  a requisição foi enviada ao computador
  "response_status": "ok",  <-  a resposta foi recebida
  "response": {             <-  resposta recebida do computador
      "status": "error",
      "error": "invalid token"
    }
  }
}
{
    "status": "ok",               <-  a requisição foi enviada ao computador
    "response_status": "timeout"  <-  o tempo aguardando a resposta foi esgotado
}

Ações disponíveis


GetLyrics

GetSong

  • v2.19.0

Retorna uma música.

Parâmetros:

Nome Tipo Descrição
id String ID da música

Resposta:

Nome Tipo Descrição
data Lyrics Música ou NULL se não for encontrado

Exemplo:

Requisição
{
  "id": "123"
}

Resposta
{
  "status": "ok",
  "data": {
    "id": "123",
    "title": "",
    "artist": "",
    "author": "",
    "note": "",
    "key": "",
    "bpm": 0,
    "time_sig": "",
    "groups": [
      {
        "name": "Group 1"
      },
      {
        "name": "Group 2"
      }
    ],
    "archived": false
  }
}

GetSongs

  • v2.21.0

Retorna a lista de músicas

Resposta:

Nome Tipo Descrição
data Array<Lyrics>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "0",
      "title": "",
      "artist": "",
      "author": "",
      "note": "",
      "copyright": "",
      "key": "",
      "bpm": 0.0,
      "time_sig": "",
      "groups": [],
      "extras": {
        "extra": ""
      },
      "archived": false
    },
    {
      "...": "..."
    },
    {
      "...": "..."
    }
  ]
}

SearchLyrics

SearchSong

  • v2.19.0

Realiza uma busca na lista de letras do usuário

Parâmetros:

Nome Tipo Descrição
input String Filtro
text String Texto a ser pesquisado
title Boolean (opcional) Padrão: true
artist Boolean (opcional) Padrão: true
note Boolean (opcional) Padrão: true
lyrics Boolean (opcional) Padrão: false
group String (opcional)

Resposta:

Nome Tipo Descrição
data Array<Lyrics>

Exemplo:

Requisição
{
  "text": "abc"
}

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "123",
      "title": "abc1",
      "artist": "",
      "author": "",
      "note": "",
      "key": "",
      "bpm": 0,
      "time_sig": "",
      "groups": [],
      "archived": false
    },
    {
      "id": "456",
      "title": "abc2",
      "artist": "",
      "author": "",
      "note": "",
      "key": "",
      "bpm": 0,
      "time_sig": "",
      "groups": [],
      "archived": false
    }
  ]
}

ShowLyrics

ShowSong

  • v2.19.0

Inicia uma apresentação de letra de música.

Parâmetros:

Nome Tipo Descrição
id String ID do item

Método sem retorno

Exemplo:

Requisição
{
  "id": "123"
}

GetText

  • v2.21.0

Retorna um texto.

Parâmetros:

Nome Tipo Descrição
id String ID do texto

Resposta:

Nome Tipo Descrição
data Text Texto ou NULL se não for encontrado

Exemplo:

Requisição
{
  "id": "xyz"
}

Resposta
{
  "status": "ok",
  "data": {
    "id": "",
    "title": "",
    "folder": "",
    "theme": null,
    "slides": [
      {
        "text": "Slide 1 line 1\nSlide 1 line 2",
        "background_id": null
      },
      {
        "text": "Slide 2 line 1\nSlide 2 line 2",
        "background_id": null
      },
      {
        "text": "Slide 3 line 1\nSlide 3 line 2",
        "background_id": null
      }
    ]
  }
}

GetTexts

  • v2.21.0

Retorna a lista de textos

Resposta:

Nome Tipo Descrição
data Array<Text>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "",
      "title": "",
      "folder": "",
      "theme": null
    },
    {
      "...": "..."
    },
    {
      "...": "..."
    }
  ]
}

SearchText

  • v2.21.0

Realiza uma busca na lista de textos do usuário

Parâmetros:

Nome Tipo Descrição
input String Filtro
text String Texto a ser pesquisado

Resposta:

Nome Tipo Descrição
data Array<Lyrics>

Exemplo:

Requisição
{
  "text": "example"
}

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "",
      "title": "",
      "folder": "",
      "theme": null
    },
    {
      "...": "..."
    },
    {
      "...": "..."
    }
  ]
}

ShowText

  • v2.19.0

Inicia uma apresentação de um item da aba texto.

Parâmetros:

Nome Tipo Descrição
id String ID do item

Método sem retorno

Exemplo:

Requisição
{
  "id": "abc"
}

ShowVerse

  • v2.19.0

Inicia uma apresentação de versículo da Bíblia.

Parâmetros:

Nome Tipo Descrição
input Object id, ids ou references
id String (opcional) Para exibir um versículo. ID do item no formato LLCCCVVV.
Exemplo: '19023001' (livro 19, capítulo 023, versículo 001)
ids Array<String> (opcional) Para exibir uma lista de versículos. Lista com o ID de cada versículo.
Exemplo: ['19023001', '43003016', '45012002']
references String (opcional) Referências. Exemplo: João 3:16 ou Rm 12:2 ou Gn 1:1-3 Sl 23.1
version String (opcional) Nome ou abreviação da tradução utilizada v2.21.0+

Método sem retorno

Exemplo:

Requisição
{
  "id": "19023001",
  "ids": [
    "19023001",
    "43003016",
    "45012002"
  ],
  "references": "Rm 12:2  Gn 1:1-3  Sl 23"
}

GetAudios

GetVideos

GetImages

GetFiles

  • v2.19.0

Retorna a lista de arquivos da respectiva aba: áudio, vídeo, imagem, arquivo

Parâmetros:

Nome Tipo Descrição
folder String (opcional) Nome da subpasta para listar os arquivos
filter String (opcional) Filtrar arquivos pelo nome
include_metadata Boolean (opcional) Adicionar metadados na resposta Padrão: false v2.22.0+
include_thumbnail Boolean (opcional) Adicionar thumbnail na resposta (80x45) Padrão: false v2.22.0+

Resposta:

Nome Tipo Descrição
data Array<Object>
data.*.name String Nome do item
data.*.isDir Boolean Retorna true se for uma pasta ou false se for arquivo.

Disponível se include_metadata=true
data.*.length Number Tamanho do arquivo (bytes). Disponível se isDir=false v2.22.0+
data.*.modified_time String Data de modificação do arquivo. Data e hora no formato: YYYY-MM-DD HH:MM v2.22.0+
data.*.duration_ms Number Duração do arquivo. Disponível se o arquivo for: audio ou vídeo v2.22.0+
data.*.width Number Largura. Disponível se o arquivo for: imagem ou vídeo v2.22.0+
data.*.height Number Altura. Disponível se o arquivo for: imagem ou vídeo v2.22.0+
data.*.position String Ajuste da imagem. Disponível para imagens. Pode ser: adjust extend fill v2.22.0+
data.*.blur Boolean Aplicar efeito blur v2.22.0+
data.*.transparent Boolean Exibir imagens com transparência v2.22.0+

Disponível se include_thumbnail=true
data.*.thumbnail String Imagem no formato base64 v2.22.0+

Exemplo:

Requisição
{
  "folder": "folder_name",
  "filter": "abc"
}

Resposta
{
  "status": "ok",
  "data": [
    {
      "name": "abcd",
      "isDir": true
    },
    {
      "name": "abcd.jpg",
      "isDir": false
    }
  ]
}

PlayAudio

  • v2.19.0

Executa um áudio ou uma lista de áudios (pasta)

Parâmetros:

Nome Tipo Descrição
file String Nome do arquivo ou da pasta. Exemplo: arquivo.mp3 ou pasta ou pasta/arquivo.mp3
settings PlayMediaSettings (opcional) Configurações para execução da mídia v2.21.0+

Método sem retorno

Exemplo:

Requisição
{
  "file": "audio.mp3"
}

PlayVideo

  • v2.19.0

Executa um vídeo ou uma lista de vídeos (pasta)

Parâmetros:

Nome Tipo Descrição
file String Nome do arquivo ou da pasta. Exemplo: arquivo.mp4 ou pasta ou pasta/arquivo.mp4
settings PlayMediaSettings (opcional) Configurações para execução da mídia v2.21.0+

Método sem retorno

Exemplo:

Requisição
{
  "file": "video.mp4"
}

ShowImage

  • v2.19.0

Apresenta uma imagem ou uma lista de imagens (pasta)

Parâmetros:

Nome Tipo Descrição
file String Nome do arquivo ou da pasta. Exemplo: arquivo.jpg ou pasta ou pasta/arquivo.jpg
automatic Automatic (opcional) Se informado, a apresentação dos itens será automática

Método sem retorno

Exemplo:

Requisição
{
  "file": "image.jpg"
}

ExecuteFile

  • v2.21.0

Executa um arquivo. Disponível apenas para extensões seguras, como áudio, vídeo, imagem, documentos, etc.

Parâmetros:

Nome Tipo Descrição
file String Nome do arquivo

Método sem retorno

Exemplo:

Requisição
{
  "file": "file.txt"
}

AudioExists

VideoExists

ImageExists

FileExists

  • v2.21.0

Verifica se existe o arquivo com o nome informado

Parâmetros:

Nome Tipo Descrição
file String Nome do arquivo

Resposta:

Nome Tipo Descrição
data Boolean

Exemplo:

Requisição
{
  "file": "file.mp3"
}

Resposta
{
  "status": "ok",
  "data": true
}

ShowAnnouncement

  • v2.19.0

Apresenta um anúncio ou uma lista de anúncios

Parâmetros:

Nome Tipo Descrição
id String (opcional) ID do anúncio. Pode ser all para exibir todos
ids Array<String> (opcional) Lista com o ID de cada anúncio
name String (opcional) Nome do anúncio
names Array<String> (opcional) Lista com o nome de cada anúncio
automatic Automatic (opcional) Se informado, a apresentação dos itens será automática

Método sem retorno

Exemplo:

Requisição
{
  "id": "all",
  "ids": [],
  "name": "",
  "names": [],
  "automatic": {
    "seconds": 10,
    "repeat": true
  }
}

GetCustomMessages

  • v2.19.0

Lista das mensagens personalizadas

Resposta:

Nome Tipo Descrição
data Array<CustomMessage>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "123",
      "name": "Carro",
      "message_model": "Atenção proprietário do veículo    , placa   -  .",
      "message_example": "Atenção proprietário do veículo modelo cor, placa placa - motivo_carro.",
      "variables": [
        {
          "position": 32,
          "name": "modelo",
          "only_number": false,
          "uppercase": false,
          "suggestions": []
        },
        {
          "position": 34,
          "name": "cor",
          "only_number": false,
          "uppercase": false,
          "suggestions": []
        },
        {
          "position": 43,
          "name": "placa",
          "only_number": false,
          "uppercase": true,
          "suggestions": []
        },
        {
          "position": 47,
          "name": "motivo_carro",
          "only_number": false,
          "uppercase": false,
          "suggestions": [
            "Favor comparecer ao estacionamento",
            "Faróis acesos",
            "Alarme disparado",
            "Remover o veículo do local",
            "Comparecer ao estacionamento com urgência"
          ]
        }
      ]
    }
  ]
}

ShowCustomMessage

  • v2.19.0

Exibir uma mensagem personalizada. Obs.: Uma mensagem personalizada não é exibida diretamente na tela. é criada uma notificação no canto da tela para o operador aceitar e exibir.

Parâmetros:

Nome Tipo Descrição
name String Nome da mensagem personalizada
position_? Object (opcional) Variável adicionada na posição especificada conforme valor retornado em variables.*.position da classe CustomMessage.
params Object (opcional) Método alternativo. Mapa chave/valor onde a chave é o nome do campo variables.*.name da classe CustomMessage. Se necessário adicionar o mesmo parâmetro, adicione *_n no final do nome, começando em 2
Exemplo: params.name, params.name_2, params.name_3 v2.21.0+
note String Informação extra exibida na janela popup para o operador

Método sem retorno

Exemplo:

Requisição
{
  "name": "Carro",
  "position_32": "modelo",
  "position_34": "cor",
  "position_43": "placa",
  "position_47": "motivo",
  "note": "..."
}

ShowQuickPresentation

  • v2.19.0

Apresentação rápida de um texto

Parâmetros:

Nome Tipo Descrição
text String Texto que será exibido. Styled Text a partir da v2.19.0
theme Object (opcional) Filtrar tema selecionado para exibição
theme.id String (opcional) ID do tema
theme.name String (opcional) Nome do tema
theme.edit Theme (opcional) Configurações para modificar o Tema selecionado para exibição v2.21.0+
custom_theme Theme (opcional) Tema personalizado utilizado para exibir o texto v2.21.0+
automatic Automatic (opcional) Se informado, a apresentação dos itens será automática

Método sem retorno

Exemplo:

Requisição
{
  "text": "Example",
  "theme": {
    "name": "Theme name"
  }
}

ShowCountdown

  • v2.20.0

Exibir uma contagem regressiva na tela público

Parâmetros:

Nome Tipo Descrição
time String HH:MM ou MM:SS
exact_time Boolean (opcional) Se true, time deve ser HH:MM (hora e minuto exato). Se false, time deve ser MM:SS (quantidade de minutos e segundos) Padrão: false
text_before String (opcional) Texto exibido na parte superior da contagem regressiva
text_after String (opcional) Texto exibido na parte inferior da contagem regressiva
zero_fill Boolean (opcional) Preencher o campo 'minuto' com zero à esquerda Padrão: false
countdown_relative_size Number (opcional) Tamanho relativo da contagem regressiva Padrão: 250
theme String (opcional) ID do Tema v2.21.0+
countdown_style FontSettings (opcional) Fonte personalizada para a contagem regressiva v2.21.0+
custom_theme Theme (opcional) Tema personalizado v2.21.0+

Método sem retorno

Exemplo:

Requisição
{
  "time": "05:00",
  "zero_fill": true
}

ShowQuiz

  • v2.20.0

Iniciar uma apresentação no formato múltipla escolha

Parâmetros:

Nome Tipo Descrição
questions Array<QuizQuestion> Questões para exibir
settings QuizSettings Configurações

Método sem retorno

Exemplo:

Requisição
{
  "questions": [
    {
      "title": "Example 1",
      "alternatives": [
        "Example 1a",
        "Example 2a",
        "Example 3a",
        "Example 4a"
      ],
      "correct_alternative_number": 2
    },
    {
      "title": "Example 2",
      "alternatives": [
        "Example 1b",
        "Example 2b",
        "Example 3b",
        "Example 4b"
      ],
      "correct_alternative_number": 2
    }
  ],
  "settings": {
    "display_alternatives_one_by_one": false,
    "alternative_char_type": "number"
  }
}

QuizAction

  • v2.20.0

Executar uma ação em uma apresentação de múltipla escolha

Parâmetros:

Nome Tipo Descrição
action String (opcional) Um dos seguintes valores: previous_slide next_slide previous_question next_question show_result close
hide_alternative Number (opcional) Ocultar uma alternativa. Começa em 1
select_alternative Number (opcional) Selecionar uma alternativa. Começa em 1
countdown Number (opcional) Iniciar uma contagem regressiva. [1-120]

Método sem retorno

Exemplo:

Requisição
{
  "action": "next_slide"
}

GetAutomaticPresentations

GetAPs

  • v2.21.0

Retorna a lista de apresentações automáticas

Resposta:

Nome Tipo Descrição
data Array<Object>
data.*.name String Nome do arquivo. Exemplo: arquivo.ap

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "name": "file 1.ap"
    },
    {
      "name": "file 2.ap"
    },
    {
      "name": "file 3.ap"
    }
  ]
}

PlayAutomaticPresentation

PlayAP

  • v2.19.0

Executa um item apresentação automática

Parâmetros:

Nome Tipo Descrição
file String Nome do arquivo. Exemplo: arquivo.ap
theme Object (opcional) Filtrar tema selecionado para exibição
theme.id String (opcional) ID do tema
theme.name String (opcional) Nome do tema
theme.edit Theme (opcional) Configurações para modificar o Tema selecionado para exibição v2.21.0+
custom_theme Theme (opcional) Tema personalizado utilizado para exibir a apresentação automática v2.21.0+

Método sem retorno

Exemplo:

Requisição
{
  "file": "filename"
}

GetAutomaticPresentationPlayerInfo

GetAPPlayerInfo

  • v2.20.0

Retorna as informações da apresentação automática em exibição

Resposta:

Nome Tipo Descrição
data.name String Nome do item
data.playing Boolean Verifica se o player está em execução
data.time_ms Number Tempo atual da mídia em milissegundos
data.volume Number Volume atual do player. Mínimo=0, Máximo=100
data.mute Boolean Verifica se a opção mudo está ativada
data.duration_ms Number Tempo total em milissegundos v2.21.0+

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "data": {
      "name": "example",
      "playing": true,
      "time_ms": 34552,
      "volume": 90,
      "mute": false
    }
  }
}

AutomaticPresentationPlayerAction

APPlayerAction

  • v2.20.0

Executa ações no player

Parâmetros:

Nome Tipo Descrição
action String (opcional) Nome da ação que será executada no player. play, pause, stop
volume Number (opcional) Altera o volume do player. Mínimo=0, Máximo=100
mute Boolean (opcional) Altera a opção mudo
time_ms Boolean (opcional) Alterar o tempo atual da mídia em milissegundos

Método sem retorno

Exemplo:

Requisição
{
  "action": "play",
  "volume": 80
}

GetMediaPlayerInfo

  • v2.19.0

Retorna as informações do player

Resposta:

Nome Tipo Descrição
data.name String Nome da mídia atual no player
data.path String Caminho completo da mídia no player
data.playing Boolean Verifica se o player está em execução
data.duration_ms Number Tempo total em milissegundos
data.time_ms Number Tempo atual da mídia em milissegundos
data.time_elapsed String Tempo decorrido no formato HH:MM:SS
data.time_remaining String Tempo restante no formato HH:MM:SS
data.volume Number Volume atual do player. Mínimo=0, Máximo=100
data.mute Boolean Verifica se a opção mudo está ativada
data.repeat Boolean Verifica se a opção repetir está ativada
data.execute_single Boolean Verifica se o player está definido para executar somente o item atual da lista
data.shuffle Boolean Verifica se a opção aleatório está ativada
data.fullscreen Boolean Verifica se a opção tela cheia está ativada

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "name": "video.mp4",
    "path": "C:\\Holyrics\\Holyrics\\files\\media\\video\\video.mp4",
    "playing": false,
    "duration_ms": 321456,
    "time_ms": -1,
    "time_elapsed": "00:00",
    "time_remaining": "00:00",
    "volume": 80,
    "mute": false,
    "repeat": true,
    "execute_single": true,
    "shuffle": false,
    "fullscreen": false
  }
}

MediaPlayerAction

  • v2.19.0

Executa ações no player

Parâmetros:

Nome Tipo Descrição
action String (opcional) Nome da ação que será executada no player. play, pause, stop, next, previous
volume Number (opcional) Altera o volume do player. Mínimo=0, Máximo=100
mute Boolean (opcional) Altera a opção mudo
repeat Boolean (opcional) Altera a opção repetir
shuffle Boolean (opcional) Altera a opção aleatório
execute_single Boolean (opcional) Altera a configuração do player para executar somente o item atual da lista
fullscreen Boolean (opcional) Altera a opção tela cheia do player
time_ms Boolean (opcional) Alterar o tempo atual da mídia em milissegundos v2.20.0+

Método sem retorno

Exemplo:

Requisição
{
  "action": "stop",
  "volume": 80,
  "mute": false,
  "repeat": false,
  "shuffle": false,
  "execute_single": false,
  "fullscreen": false
}

GetLyricsPlaylist

GetSongPlaylist

  • v2.19.0

Lista de reprodução de letras

Resposta:

Nome Tipo Descrição
data Array<Lyrics>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "123",
      "title": "",
      "artist": "",
      "author": "",
      "note": "",
      "key": "",
      "bpm": 0,
      "time_sig": "",
      "groups": [],
      "archived": false
    },
    {
      "id": "456",
      "title": "",
      "artist": "",
      "author": "",
      "note": "",
      "key": "",
      "bpm": 0,
      "time_sig": "",
      "groups": [],
      "archived": false
    }
  ]
}

AddLyricsToPlaylist

AddSongsToPlaylist

  • v2.19.0

Adicionar letra de música na lista de reprodução

Parâmetros:

Nome Tipo Descrição
id String (opcional) ID da letra
ids Array<String> (opcional) Lista com id de cada letra
index Number (opcional) Posição na lista onde o item será adicionado (inicia em zero). Os itens são adicionados no final da lista por padrão. Padrão: -1
media_playlist Boolean (opcional) Adicionar as letras na lista de reprodução de mídia Padrão: false

Método sem retorno

Exemplo:

Requisição
{
  "id": "123",
  "ids": [
    123,
    456,
    789
  ],
  "index": 3,
  "media_playlist": false
}

RemoveFromLyricsPlaylist

RemoveFromSongPlaylist

  • v2.19.0

Remover letra de música na lista de reprodução

Parâmetros:

Nome Tipo Descrição
id String (opcional) ID da letra
ids Array<String> (opcional) Lista com id de cada letra
index Number (opcional) Posição do item na lista que será removido (inicia em zero).
indexes Array<Number> (opcional) Lista com a posição de cada item na lista que será removido. (Inicia em zero)

Método sem retorno

Exemplo:

Requisição
{
  "id": "123",
  "ids": [
    "123",
    "456",
    "789"
  ],
  "index": 3,
  "indexes": [
    3,
    4,
    5
  ]
}

SetLyricsPlaylistItem

SetSongPlaylistItem

  • v2.22.0

Alterar um item da lista de reprodução de letra de música

Parâmetros:

Nome Tipo Descrição
index Number Índice do item na lista
song_id String Novo item

Método sem retorno

Exemplo:

Requisição
{
  "index": 2,
  "song_id": "123"
}

GetMediaPlaylist

  • v2.19.0

Lista de reprodução de mídia

Resposta:

Nome Tipo Descrição
data Array<Item>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "xyz",
      "type": "image",
      "name": "image.jpg"
    },
    {
      "id": "abc",
      "type": "video",
      "name": "video.mp4"
    }
  ]
}

SetMediaPlaylistItem

  • v2.22.0

Alterar um item da lista de reprodução de mídia

Parâmetros:

Nome Tipo Descrição
index Number Índice do item na lista
item AddItem Novo item

Método sem retorno

Exemplo:

Requisição
{
  "index": 0,
  "item": {
    "type": "song",
    "id": "123"
  }
}

MediaPlaylistAction

  • v2.19.0

Executa um item da lista de reprodução de mídia

Parâmetros:

Nome Tipo Descrição
id String ID do item

Método sem retorno

Exemplo:

Requisição
{
  "id": "abc"
}

GetNextSongPlaylist

  • v2.22.0

Retorna a próxima música da lista de reprodução. Pode ser null

Resposta:

Nome Tipo Descrição
data Lyrics

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "id": "123",
    "title": "",
    "artist": "",
    "author": "",
    "note": "",
    "key": "",
    "bpm": 0,
    "time_sig": "",
    "groups": [],
    "archived": false
  }
}

GetNextMediaPlaylist

  • v2.22.0

Retorna o próximo item executável da lista de reprodução de mídia. Pode ser null

Resposta:

Nome Tipo Descrição
data Item

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "id": "abc123",
    "type": "song",
    "name": ""
  }
}

ShowNextSongPlaylist

  • v2.22.0

Executa a próxima música da lista de reprodução

Método sem retorno


ShowNextMediaPlaylist

  • v2.22.0

Executa o próximo item da lista de reprodução de mídia

Método sem retorno


GetPreviousSongPlaylist

  • v2.22.0

Retorna a música anterior da lista de reprodução. Pode ser null

Resposta:

Nome Tipo Descrição
data Lyrics

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "id": "123",
    "title": "",
    "artist": "",
    "author": "",
    "note": "",
    "key": "",
    "bpm": 0,
    "time_sig": "",
    "groups": [],
    "archived": false
  }
}

GetPreviousMediaPlaylist

  • v2.22.0

Retorna o item anterior executável da lista de reprodução de mídia. Pode ser null

Resposta:

Nome Tipo Descrição
data Item

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "id": "abc123",
    "type": "song",
    "name": ""
  }
}

ShowPreviousSongPlaylist

  • v2.22.0

Executa a música anterior da lista de reprodução

Método sem retorno


ShowPreviousMediaPlaylist

  • v2.22.0

Executa o item anterior da lista de reprodução de mídia

Método sem retorno


AddToPlaylist

  • v2.20.0

Adicionar itens à lista de reprodução de mídias

Parâmetros:

Nome Tipo Descrição
items Array<AddItem> Lista com os itens que serão adicionados
index Number (opcional) Posição na lista onde o item será adicionado (inicia em zero). Os itens são adicionados no final da lista por padrão. Padrão: -1
ignore_duplicates Boolean (opcional) Não duplicar itens ao adicionar novos itens, ou seja, não adiciona um item se ele já estiver na lista. Padrão: false

Método sem retorno

Exemplo:

Requisição
{
  "items": [
    {
      "type": "title",
      "name": "Título",
      "background_color": "000080"
    },
    {
      "type": "song",
      "id": 12345678
    },
    {
      "type": "verse",
      "id": "19023001"
    },
    {
      "type": "verse",
      "ids": [
        "19023001",
        "43003016"
      ]
    },
    {
      "type": "verse",
      "references": "Sl 23.1 Rm 12:2"
    },
    {
      "type": "text",
      "id": "abcxyz"
    },
    {
      "type": "audio",
      "name": "example.mp3"
    },
    {
      "type": "video",
      "name": "example.mp4"
    },
    {
      "type": "image",
      "name": "example.jpg"
    },
    {
      "type": "automatic_presentation",
      "name": "example.ap"
    },
    {
      "type": "title",
      "name": "Título 2"
    },
    {
      "type": "announcement",
      "id": 12345678
    },
    {
      "type": "announcement",
      "ids": [
        123,
        456
      ]
    },
    {
      "type": "announcement",
      "name": "example"
    },
    {
      "type": "announcement",
      "names": [
        "example 2",
        "example 3"
      ]
    },
    {
      "type": "announcement",
      "id": "all",
      "automatic": {
        "seconds": 8,
        "repeat": false
      }
    },
    {
      "type": "title",
      "name": "Título 3"
    },
    {
      "type": "countdown",
      "time": "03:15"
    },
    {
      "type": "countdown_cp",
      "minutes": 15,
      "stop_at_zero": true
    },
    {
      "type": "cp_text",
      "text": "example"
    },
    {
      "type": "script",
      "id": "abcxyz"
    },
    {
      "type": "api",
      "id": "abcxyz"
    }
  ]
}

RemoveFromMediaPlaylist

  • v2.19.0

Remover itens da lista de reprodução de mídia

Parâmetros:

Nome Tipo Descrição
id String (opcional) ID do item
ids Array<String> (opcional) Lista com id de cada item
index Number (opcional) Posição do item na lista que será removido (inicia em zero).
indexes Array<Number> (opcional) Lista com a posição de cada item na lista que será removido. (Inicia em zero)

Método sem retorno

Exemplo:

Requisição
{
  "id": "abc",
  "ids": [
    "abc",
    "xyz"
  ],
  "index": 3,
  "indexes": [
    2,
    3
  ]
}

SetPlaylistItemDuration

  • v2.21.0

Alterar duração de um item da lista de reprodução de mídia.

Parâmetros:

Nome Tipo Descrição
id String (opcional) ID do item
index Number (opcional) Posição do item na lista (inicia em zero).
duration Number (opcional) Duração do item (em segundos)

Método sem retorno

Exemplo:

Requisição
{
  "id": "xyz",
  "duration": 300
}

GetSlideDescriptions

  • v2.21.0

Lista das descrições do slide disponíveis

Resposta:

Nome Tipo Descrição
data Array<SlideDescription>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "name": "Chorus",
      "tag": "C",
      "aliases": [],
      "font_color": "FFFFFF",
      "bg_color": "000080",
      "background": null
    },
    {
      "...": "..."
    },
    {
      "...": "..."
    }
  ]
}

GetFavorites

  • v2.19.0

Itens da barra de favoritos

Resposta:

Nome Tipo Descrição
data Array<FavoriteItem>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "1",
      "name": "abc"
    },
    {
      "id": "2",
      "name": "xyz"
    },
    {
      "id": "3",
      "name": "123"
    }
  ]
}

FavoriteAction

  • v2.19.0

Executa um item da barra de favoritos

Parâmetros:

Nome Tipo Descrição
id String ID do item

Método sem retorno

Exemplo:

Requisição
{
  "id": "abcxyz"
}

GetApis

  • v2.21.0

Retorna a lista de APIs

Resposta:

Nome Tipo Descrição
data Array<Object>
data.*.id String ID do item
data.*.name String Nome do item

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "xyz1",
      "name": "abc1"
    },
    {
      "id": "xyz2",
      "name": "abc2"
    }
  ]
}

GetScripts

  • v2.21.0

Retorna a lista de scripts

Resposta:

Nome Tipo Descrição
data Array<Object>
data.*.id String ID do item
data.*.name String Nome do item

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "xyz1",
      "name": "abc1"
    },
    {
      "id": "xyz2",
      "name": "abc2"
    }
  ]
}

ApiAction

  • v2.19.0

Executa a ação de um item API existente no programa

Parâmetros:

Nome Tipo Descrição
id String ID do item

Método sem retorno

Exemplo:

Requisição
{
  "id": "abcxyz"
}

ScriptAction

  • v2.19.0

Executa a ação de um item Script existente no programa

Parâmetros:

Nome Tipo Descrição
id String ID do item

Método sem retorno

Exemplo:

Requisição
{
  "id": "abc"
}

ApiRequest

  • v2.19.0

Executa uma requisição para o receptor associado e retorna a resposta do receptor.

Parâmetros:

Nome Tipo Descrição
id String id do receptor
raw Object dados da requisição

Resposta:

Tipo Descrição
Object Retorno da requisição ou NULL para erro/timeout

Exemplo:

Requisição
{
  "id": "abcxyz",
  "raw": {
    "request-type": "GetSourceActive",
    "sourceName": "example"
  }
}

Resposta
{
  "status": "ok",
  "data": {
    "sourceActive": "example"
  }
}

GetCurrentPresentation

  • v2.19.0

Item sendo apresentado no momento ou null se não tiver apresentação sendo exibida

Parâmetros:

Nome Tipo Descrição
include_slides Boolean (opcional) Retornar a lista de slides da apresentação atual. Indisponível para apresentação de versículos. Padrão: false v2.21.0+
include_slide_comment Boolean (opcional) Incluir comentários (se houver) no texto dos slides. Disponível se include_slides=true. Padrão: false v2.21.0+
include_slide_preview Boolean (opcional) Incluir imagem preview do slide. Disponível se include_slides=true. Padrão: false v2.21.0+
lide_preview_size String (opcional) Tamanho do preview no formato WxH (ex. 320x180). (max 640x360)
Disponível se include_slide_preview=true Padrão: false v2.21.0+

Resposta:

Nome Tipo Descrição
data.id String ID do item
data.type String Tipo do item. Pode ser: song verse text audio image announcement automatic_presentation quick_presentation
data.name String Nome do item
data.slide_number Number Começa em 1 v2.20.0+
data.total_slides Number Total de slides v2.20.0+
data.slide_type String Um dos seguintes valores: default wallpaper blank black final_slide v2.20.0+
data.slides Array<PresentationSlideInfo> Lista com os slides da apresentação atual. Disponível se include_slides=true v2.21.0+

Exemplo:

Requisição
{}

Resposta
{
  "status": "ok",
  "data": {
    "id": "abc123",
    "type": "song",
    "name": "",
    "song_id": "123"
  }
}

CloseCurrentPresentation

  • v2.19.0

Encerra a apresentação atual

Método sem retorno


GetF8

GetF9

GetF10

  • v2.19.0

Retorna o estado atual da respectiva opção F8 (papel de parede), F9 (tela vazia) ou F10 (tela preta)

Resposta:

Tipo Descrição
Boolean true ou false

Exemplo:

Resposta
{
  "status": "ok",
  "data": false
}

SetF8

SetF9

SetF10

  • v2.19.0

Altera o estado atual da respectiva opção F8 (papel de parede), F9 (tela vazia) ou F10 (tela preta)

Parâmetros:

Nome Tipo Descrição
enable Boolean true ou false

Método sem retorno

Exemplo:

Requisição
{
  "enable": true
}

ToggleF8

ToggleF9

ToggleF10

  • v2.19.0

Troca o estado atual da respectiva opção F8 (papel de parede), F9 (tela vazia) ou F10 (tela preta)

Método sem retorno


ActionNext

  • v2.19.0

Executa um comando de avançar na apresentação atual

Método sem retorno


ActionPrevious

  • v2.19.0

Executa um comando de voltar na apresentação atual

Método sem retorno


ActionGoToIndex

  • v2.19.0

Altera o slide em exibição a partir do índice do slide

Parâmetros:

Nome Tipo Descrição
index Number Índice do slide na apresentação (começa em zero)

Método sem retorno

Exemplo:

Requisição
{
  "index": 3
}

ActionGoToSlideDescription

  • v2.19.0

Altera o slide em exibição a partir do nome da descrição do slide

Parâmetros:

Nome Tipo Descrição
name String Nome da descrição do slide

Método sem retorno

Exemplo:

Requisição
{
  "name": "Verse 1"
}

GetCurrentBackground

  • v2.19.0

Retorna o plano de fundo da apresentação em exibição.

Resposta:

Nome Tipo Descrição
data Background Plano de fundo atual ou NULL se não houver apresentação em exibição

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "id": "abc",
    "type": "my_video",
    "name": "Video Name",
    "tags": [
      "circle",
      "blue"
    ],
    "bpm": 80,
    "midi": {
      "code": 85,
      "velocity": 81
    }
  }
}

GetCurrentTheme

  • v2.22.0

Retorna o tema da apresentação em exibição.

Resposta:

Nome Tipo Descrição
data Background Tema atual ou NULL se não houver apresentação em exibição

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "id": "123",
    "type": "theme",
    "name": "Theme Name",
    "tags": [
      "circle",
      "blue"
    ],
    "bpm": 80
  }
}

GetBackgrounds

  • v2.19.0

Lista dos temas e planos de fundo

Parâmetros:

Nome Tipo Descrição
input Object (opcional) Filtro
type String (opcional) Pode ser: theme my_video my_image video image
tag String (opcional)
tags Array<String> (opcional)
intersection Boolean (opcional) Se o campo tags estiver preenchido com múltiplos itens, a opção intersection define o tipo de junção. Se true, o filtro retornará apenas itens que contém todas as tags informadas, se false, o filtro retornará os itens que têm pelo menos uma tag das tags informadas Padrão: false

Resposta:

Nome Tipo Descrição
data Array<Background>

Exemplo:

Requisição
{
  "type": "my_video",
  "tag": "circle",
  "tags": [],
  "intersection": true
}

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "xyz",
      "type": "theme",
      "name": "Theme Name",
      "tags": [
        "circle",
        "blue"
      ],
      "midi": {
        "code": 85,
        "velocity": 80
      }
    },
    {
      "id": "abc",
      "type": "my_video",
      "name": "Video Name",
      "tags": [
        "circle",
        "blue"
      ],
      "bpm": 80,
      "midi": {
        "code": 85,
        "velocity": 81
      }
    }
  ]
}

SetCurrentBackground

  • v2.19.0

Altera o plano de fundo (ou tema) da apresentação atual. Se mais de um item for encontrado de acordo com os filtros, será escolhido um item da lista de forma aleatória

Parâmetros:

Nome Tipo Descrição
input Object (opcional) Filtro
id String (opcional) ID do tema ou plano de fundo
name String (opcional) Nome do tema ou plano de fundo
type String (opcional) Pode ser: theme my_video my_image video image
tag String (opcional)
tags Array<String> (opcional)
intersection Boolean (opcional) Se o campo tags estiver preenchido com múltiplos itens, a opção intersection define o tipo de junção. Se true, o filtro retornará apenas itens que contém todas as tags informadas, se false, o filtro retornará os itens que têm pelo menos uma tag das tags informadas Padrão: false
edit Theme (opcional) Configurações para modificar o Tema selecionado para exibição v2.21.0+
custom_theme Theme (opcional) Tema personalizado v2.21.0+

Método sem retorno

Exemplo:

Requisição
{
  "id": "123",
  "name": "",
  "type": "my_video",
  "tag": "blue",
  "tags": [],
  "intersection": false
}

GetThumbnail

  • v2.21.0

Retorna a imagem miniatura de um item no programa

Parâmetros:

Nome Tipo Descrição
id String (opcional) ID do item
ids Array<String> (opcional) ID dos itens
type String Tipo do item. Pode ser: video image announcement theme background api script

Resposta:

Nome Tipo Descrição
data Array<Object>
data.*.type String Tipo do item
data.*.id String ID do item
data.*.image String Imagem no formato base64

Exemplo:

Requisição
{
  "id": "image.jpg",
  "type": "image"
}

Resposta
{
  "status": "ok",
  "data": [
    {
      "type": "image",
      "id": "image.jpg",
      "image": "..."
    }
  ]
}

GetColorMap

  • v2.20.0

Retorna as informações de cor predominante de um respectivo tipo de item
O array retornado contém 8 índices, e cada índice corresponde ao trecho conforme imagem de exemplo a seguir.

Color Map Example

Parâmetros:

Nome Tipo Descrição
type String Um dos seguintes valores:
background - um item de tema ou plano de fundo
presentation - apresentação atual em exibição
image - uma imagem da aba 'imagens'
video - um vídeo da aba 'vídeos'
printscreen - um printscreen atual de uma tela do sistema
source Object (opcional) O item de acordo com o tipo informado:
background - ID do tema ou plano de fundo
presentation - não é necessário informar um valor, a apresentação da tela público será retornada
image - o nome do arquivo da aba 'imagens'
video - o nome do arquivo da aba 'vídeos'
printscreen opcional - o nome da tela (public, screen_2, screen_3, ...); o padrão é public

Resposta:

Nome Tipo Descrição
data Array<Object>
data.*.hex String Cor no formato hexadecimal
data.*.red Number Vermelho 0-255
data.*.green Number Verde 0-255
data.*.blue Number Azul 0-255

Exemplo:

Requisição
{
  "type": "background",
  "source": 12345678
}

Resposta
{
  "status": "ok",
  "data": [
    {
      "hex": "0000FF",
      "red": 0,
      "green": 0,
      "blue": 255
    },
    {
      "...": "..."
    },
    {
      "...": "..."
    },
    {
      "...": "..."
    }
  ]
}

GetAlert

  • v2.20.0

Retorna as configurações da mensagem de alerta

Resposta:

Nome Tipo Descrição
data.text String Texto atual do alerta
data.show Boolean Se a exibição do alerta está ativada

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "text": "Example",
    "show": false
  }
}

SetAlert

  • v2.19.0

Altera as configurações da mensagem de alerta

Parâmetros:

Nome Tipo Descrição
text String (opcional) Alterar o texto de alerta
show Boolean (opcional) Exibir/ocultar o alerta

Método sem retorno

Exemplo:

Requisição
{
  "text": "",
  "show": false
}

GetCurrentSchedule

  • v2.19.0

Programação atual (selecionada na janela principal do programa)

Resposta:

Nome Tipo Descrição
data Array<Schedule>

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "type": "event",
    "name": "",
    "datetime": "2016-05-10 12:00",
    "lyrics_playlist": [
      {
        "id": "123",
        "title": "",
        "artist": "",
        "author": "",
        "note": "",
        "key": "",
        "bpm": 0,
        "time_sig": "",
        "groups": [
          {
            "name": "Group 1"
          },
          {
            "name": "Group 2"
          }
        ],
        "archived": false
      }
    ],
    "media_playlist": [
      {
        "id": "xyz",
        "type": "image",
        "name": "image.jpg"
      },
      {
        "id": "abc",
        "type": "video",
        "name": "video.mp4"
      }
    ],
    "responsible": null,
    "members": [],
    "roles": [],
    "notes": ""
  }
}

GetSchedules

  • v2.19.0

Retorna a lista de programação de um mês específico

Parâmetros:

Nome Tipo Descrição
month Number Mês (1-12)
year Number Ano

Resposta:

Nome Tipo Descrição
data Array<Schedule>

Exemplo:

Requisição
{
  "month": 3,
  "year": 2022
}

Resposta
{
  "status": "ok",
  "data": [
    {
      "type": "service",
      "name": "",
      "datetime": "2022-03-06 19:00",
      "lyrics_playlist": [],
      "media_playlist": [],
      "responsible": null,
      "members": [],
      "roles": [],
      "notes": ""
    },
    {
      "type": "event",
      "name": "",
      "datetime": "2022-03-12 20:00",
      "lyrics_playlist": [],
      "media_playlist": [],
      "responsible": null,
      "members": [],
      "roles": [],
      "notes": ""
    },
    {
      "type": "service",
      "name": "",
      "datetime": "2022-03-13 19:00",
      "lyrics_playlist": [],
      "media_playlist": [],
      "responsible": null,
      "members": [],
      "roles": [],
      "notes": ""
    },
    {
      "type": "service",
      "name": "",
      "datetime": "2022-03-20 19:00",
      "lyrics_playlist": [],
      "media_playlist": [],
      "responsible": null,
      "members": [],
      "roles": [],
      "notes": ""
    },
    {
      "type": "service",
      "name": "",
      "datetime": "2022-03-27 19:00",
      "lyrics_playlist": [],
      "media_playlist": [],
      "responsible": null,
      "members": [],
      "roles": [],
      "notes": ""
    }
  ]
}

GetSavedPlaylists

  • v2.19.0

Retorna as listas de reprodução salvas

Resposta:

Nome Tipo Descrição
data Array<Object>
data.*.id String ID do item
data.*.name String Nome do item
data.*.items Array<Item> Itens salvos na lista

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "xyzabc",
      "name": "",
      "items": [
        {
          "id": "xyz",
          "type": "image",
          "name": "image.jpg"
        },
        {
          "id": "abc",
          "type": "video",
          "name": "video.mp4"
        }
      ]
    },
    {
      "id": "abcdef",
      "name": "",
      "items": [
        {
          "id": "abc",
          "type": "audio",
          "name": "audio.mp3"
        },
        {
          "id": "xyz",
          "type": "song",
          "name": "",
          "song_id": "123"
        }
      ]
    }
  ]
}

LoadSavedPlaylist

  • v2.19.0

Preenche a lista de mídias da lista de reprodução selecionada atualmente no programa com a lista informada

Parâmetros:

Nome Tipo Descrição
name String Nome da lista de reprodução salva

Método sem retorno

Exemplo:

Requisição
{
  "name": ""
}

GetHistory

  • v2.19.0

Histórico de "Música tocada"

Parâmetros:

Nome Tipo Descrição
id String ID da letra da música

Resposta:

Nome Tipo Descrição
data Array<String> Data e hora no formato: YYYY-MM-DD HH:MM

Exemplo:

Requisição
{
  "id": "123"
}

Resposta
{
  "status": "ok",
  "data": [
    "2022-04-03 19:32",
    "2022-07-10 20:10",
    "2023-01-01 19:15"
  ]
}

GetHistories

  • v2.19.0

Histórico de todas as marcações de "Música tocada"

Resposta:

Nome Tipo Descrição
data Array<Object>
data.*.music_id String ID da música
data.*.history Array<String> Data e hora no formato: YYYY-MM-DD HH:MM

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "music_id": "123",
      "history": [
        "2022-04-03 19:32",
        "2022-07-10 20:10",
        "2023-01-01 19:15"
      ]
    },
    {
      "music_id": "456",
      "history": [
        "2022-05-05 19:20",
        "2022-08-08 20:30",
        "2023-01-10 20:02"
      ]
    }
  ]
}

GetTeams

  • v2.22.0

Lista de times

Resposta:

Nome Tipo Descrição
data Array<Team>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "abc",
      "name": "abc",
      "description": ""
    },
    {
      "id": "xyz",
      "name": "xyz",
      "description": ""
    }
  ]
}

GetMembers

  • v2.19.0

Lista de integrantes

Resposta:

Nome Tipo Descrição
data Array<Member>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "abc",
      "name": ""
    },
    {
      "id": "xyz",
      "name": ""
    }
  ]
}

GetRoles

  • v2.19.0

Lista de funções

Resposta:

Nome Tipo Descrição
data Array<Role>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "abc",
      "name": ""
    },
    {
      "id": "xyz",
      "name": ""
    }
  ]
}

GetServices

  • v2.22.0

Lista de cultos

Resposta:

Nome Tipo Descrição
data Array<Service>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "name": "",
      "week": "all",
      "day": "sun",
      "hour": 19,
      "minute": 0,
      "description": "",
      "hide_week": [
        "second"
      ]
    },
    {
      "name": "Supper Worship",
      "week": "second",
      "day": "sun",
      "hour": 19,
      "minute": 0,
      "description": ""
    }
  ]
}

GetEvents

  • v2.22.0

Lista de eventos

Parâmetros:

Nome Tipo Descrição
month Number Mês (1-12)
year Number Ano

Resposta:

Nome Tipo Descrição
data Array<Event>

Exemplo:

Requisição
{
  "month": 8,
  "year": 2022
}

Resposta
{
  "status": "ok",
  "data": [
    {
      "name": "Event name",
      "datetime": "2022-08-19 18:00",
      "wallpaper": ""
    },
    {
      "name": "Event name",
      "datetime": "2022-08-20 18:00",
      "wallpaper": ""
    }
  ]
}

GetAnnouncement

  • v2.22.0

Anúncio

Parâmetros:

Nome Tipo Descrição
id String (opcional) ID do anúncio
name String (opcional) Nome do anúncio

Resposta:

Nome Tipo Descrição
data Announcement

Exemplo:

Requisição
{
  "id": "123"
}

Resposta
{
  "status": "ok",
  "data": {
    "id": "abc",
    "name": "",
    "text": "",
    "archived": false
  }
}

GetAnnouncements

  • v2.22.0

Lista de anúncios

Resposta:

Nome Tipo Descrição
data Array<Announcement>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "abc",
      "name": "",
      "text": "",
      "archived": false
    },
    {
      "id": "xyz",
      "name": "",
      "text": "",
      "archived": false
    }
  ]
}

GetCommunicationPanelInfo

GetCPInfo

GetCPSettings

  • v2.19.0

Configuração atual do painel de comunicação

Resposta:

Nome Tipo Descrição
data.text String Texto atual
data.show Boolean Se o texto atual está em exibição
data.display_ahead Boolean Se a opção 'exibir à frente de tudo' está ativada
data.alert_text String Texto atual do alerta
data.alert_show Boolean Se a exibição do alerta está ativada
data.countdown_show Boolean Se uma contagem regressiva está em exibição
data.countdown_time Number O tempo atual da contagem regressiva em exibição (em segundos)
data.stopwatch_show Boolean Se um cronômetro está em exibição v2.20.0+
data.stopwatch_time Number O tempo atual do cronômetro em exibição (em segundos) v2.20.0+
data.theme Number ID do tema v2.20.0+
data.countdown_font_relative_size Number Tamanho relativo da contagem regressiva v2.20.0+
data.countdown_font_color String Cor da fonte da contagem regressiva v2.20.0+
data.stopwatch_font_color String Cor da fonte do cronômetro v2.20.0+
data.time_font_color String Cor da fonte da hora v2.20.0+
data.display_clock_as_background Boolean Exibir relógio como plano de fundo v2.20.0+
data.display_clock_on_alert Boolean Exibir relógio no alerta v2.20.0+
data.countdown_display_location String Local de exibição da contagem regressiva ou cronômetro. FULLSCREEN FULLSCREEN_OR_ALERT ALERT v2.20.0+
data.display_clock_with_countdown_fullscreen Boolean Exibir relógio junto da contagem regressiva ou cronômetro quando exibido em tela cheia v2.20.0+
data.display_vlc_player_remaining_time Boolean Exibir tempo restante da mídia em execução no VLC Player v2.20.0+

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "text": "",
    "show": false,
    "display_ahead": false,
    "alert_text": "",
    "alert_show": false,
    "countdown_show": false,
    "countdown_time": 0
  }
}

SetCommunicationPanelSettings

SetCPSettings

  • v2.20.0

Alterar configuração atual do painel de comunicação

Parâmetros:

Nome Tipo Descrição
text String (opcional) Texto atual
show Boolean (opcional) Exibir o texto atual
display_ahead Boolean (opcional) Opção 'exibir à frente de tudo'
theme Object (opcional) ID ou nome do tema padrão
theme.id String (opcional)
theme.name String (opcional)
custom_theme Theme (opcional) Tema personalizado v2.21.0+
alert_text String (opcional) Texto atual do alerta
alert_show Boolean (opcional) Ativar a exibição do alerta
countdown_font_relative_size Number (opcional) Tamanho relativo da contagem regressiva
countdown_font_color String (opcional) Cor da fonte da contagem regressiva
stopwatch_font_color String (opcional) Cor da fonte do cronômetro
time_font_color String (opcional) Cor da fonte da hora
display_clock_as_background Boolean (opcional) Exibir relógio como plano de fundo
display_clock_on_alert Boolean (opcional) Exibir relógio no alerta
countdown_display_location String (opcional) Local de exibição da contagem regressiva ou cronômetro. FULLSCREEN FULLSCREEN_OR_ALERT ALERT
display_clock_with_countdown_fullscreen Boolean (opcional) Exibir relógio junto da contagem regressiva ou cronômetro quando exibido em tela cheia
display_vlc_player_remaining_time Boolean (opcional) Exibir tempo restante da mídia em execução no VLC Player

Método sem retorno

Exemplo:

Requisição
{
  "display_clock_as_background": false,
  "display_clock_on_alert": true
}

StartCountdownCommunicationPanel

StartCountdownCP

  • v2.19.0

Inicia uma contagem regressiva no painel de comunicação

Parâmetros:

Nome Tipo Descrição
minutes Number Quantidade de minutos
seconds Number Quantidade de segundos
yellow_starts_at Number (opcional) Valor em segundos para definir a partir de quanto tempo a contagem regressiva ficará amarela
stop_at_zero Boolean (opcional) Parar a contagem regressiva ao chegar em zero Padrão: false

Método sem retorno

Exemplo:

Requisição
{
  "minutes": 5,
  "seconds": 0,
  "yellow_starts_at": 60,
  "stop_at_zero": false
}

StopCountdownCommunicationPanel

StopCountdownCP

  • v2.19.0

Encerra a contagem regressiva atual do painel de comunicação

Método sem retorno


StartTimerCommunicationPanel

StartTimerCP

  • v2.20.0

Inicia um cronômetro no painel de comunicação

Método sem retorno


StopTimerCommunicationPanel

StopTimerCP

  • v2.20.0

Encerra o cronômetro atual do painel de comunicação

Método sem retorno


SetTextCommunicationPanel

SetTextCP

  • v2.19.0

Alterar o texto do painel de comunicação

Parâmetros:

Nome Tipo Descrição
text String (opcional) Alterar o texto do painel de comunicação. Styled Text a partir da v2.19.0
show Boolean (opcional) Exibir/ocultar o texto
display_ahead Boolean (opcional) Alterar a opção 'exibir à frente de tudo'
theme Object (opcional) ID ou nome do Tema utilizado para exibir o texto v2.21.0+
custom_theme Theme (opcional) Tema personalizado para exibir o texto v2.21.0+

Método sem retorno

Exemplo:

Requisição
{
  "text": "",
  "show": true,
  "display_ahead": true
}

SetAlertCommunicationPanel

SetAlertCP

  • v2.19.0

Alterar as configurações de alerta do painel de comunicação

Parâmetros:

Nome Tipo Descrição
text String (opcional) Alterar o texto de alerta
show Boolean (opcional) Exibir/ocultar o alerta

Método sem retorno

Exemplo:

Requisição
{
  "text": "",
  "show": false
}

CommunicationPanelCallAttention

CPCallAttention

  • v2.20.0

Executa a opção 'chamar atenção' disponível no painel de comunicação

Método sem retorno


GetWallpaperSettings

  • v2.19.0

Configurações do papel de parede

Resposta:

Nome Tipo Descrição
data.image_base64 String Imagem do papel de parede em base 64
data.enabled Boolean Exibir papel de parede
data.fill_color String Cor em hexadecimal definida na opção preencher.
data.extend Boolean deprecated Substituído por adjust_type
Estender papel de parede
data.adjust_type String Ajuste da imagem: Pode ser: ADJUST EXTEND FILL ADJUST_BLUR v2.22.0+
data.show_clock Boolean Exibir relógio

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "image_base64": "",
    "enabled": false,
    "fill_color": "#000000",
    "extend": false,
    "show_clock": false
  }
}

SetWallpaperSettings

  • v2.19.0

Alterar as configurações do papel de parede

Parâmetros:

Nome Tipo Descrição
file String (opcional) Local do arquivo na aba Imagens
enabled Boolean (opcional) Exibir papel de parede
fill_color String (opcional) Cor em hexadecimal definida na opção preencher. NULL para desativar
extend Boolean (opcional) deprecated Substituído por adjust_type
Estender papel de parede
data.adjust_type String Ajuste da imagem: Pode ser: ADJUST EXTEND FILL ADJUST_BLUR v2.22.0+
show_clock Boolean (opcional) Exibir relógio

Resposta:

Tipo Descrição
Object Retorna true ou uma lista com os erros ocorridos

Exemplo:

Requisição
{
  "file": "wallpapers/image.jpg",
  "enabled": true,
  "fill_color": "#000000",
  "extend": true,
  "show_clock": false
}

Resposta
{
  "status": "ok",
  "data": true
}

GetDisplaySettings

  • v2.19.0

Lista das configurações de exibição de cada tela

Resposta:

Nome Tipo Descrição
data Array<DisplaySettings>

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "id": "public",
      "name": "Public",
      "slide_info": {
        "info_1": {
          "show_page_count": false,
          "show_slide_description": false,
          "horizontal_align": "right",
          "vertical_align": "bottom"
        },
        "info_2": {
          "show": false,
          "layout_row_1": "<title>< (%author_or_artist%)>",
          "horizontal_align": "right",
          "vertical_align": "bottom"
        },
        "font": {
          "name": null,
          "bold": null,
          "italic": null,
          "color": null
        },
        "height": 7,
        "paint_theme_effect": true
      },
      "slide_translation": "",
      "margin": {
        "top": 0.0,
        "right": 0.0,
        "bottom": 0.0,
        "left": 0.0
      },
      "area": {
        "x": 1920,
        "y": 0,
        "width": 1920,
        "height": 1080
      },
      "total_area": {
        "x": 1920,
        "y": 0,
        "width": 1920,
        "height": 1080
      },
      "hide": false
    },
    {
      "id": "screen_2",
      "name": "Screen 2",
      "stage_view": {
        "enabled": true,
        "preview_mode": "FIRST_LINE_OF_THE_NEXT_SLIDE_WITH_SEPARATOR",
        "uppercase": false,
        "remove_line_break": false,
        "show_comment": true,
        "show_advanced_editor": false,
        "show_communication_panel": true,
        "custom_theme": 123,
        "apply_custom_theme_to_bible": true,
        "apply_custom_theme_to_text": true
      },
      "slide_info": {
        "info_1": {
          "show_page_count": false,
          "show_slide_description": false,
          "horizontal_align": "right",
          "vertical_align": "bottom"
        },
        "info_2": {
          "show": false,
          "layout_row_1": "<title>< (%author_or_artist%)>",
          "horizontal_align": "right",
          "vertical_align": "bottom"
        },
        "font": {
          "name": null,
          "bold": null,
          "italic": null,
          "color": null
        },
        "height": 7,
        "paint_theme_effect": true
      },
      "slide_translation": "",
      "bible_version_tab": 1,
      "margin": {
        "top": 0.0,
        "right": 0.0,
        "bottom": 0.0,
        "left": 0.0
      },
      "area": {
        "x": 3840,
        "y": 0,
        "width": 1920,
        "height": 1080
      },
      "total_area": {
        "x": 3840,
        "y": 0,
        "width": 1920,
        "height": 1080
      },
      "hide": false
    },
    {
      "id": "stream_image",
      "name": "Stream - Image",
      "stage_view": {
        "enabled": true,
        "preview_mode": "FIRST_LINE_OF_THE_NEXT_SLIDE_WITH_SEPARATOR",
        "uppercase": false,
        "remove_line_break": false,
        "show_comment": true,
        "show_advanced_editor": false,
        "show_communication_panel": true,
        "custom_theme": null,
        "apply_custom_theme_to_bible": true,
        "apply_custom_theme_to_text": true
      },
      "slide_info": {
        "info_1": {
          "show_page_count": false,
          "show_slide_description": false,
          "horizontal_align": "right",
          "vertical_align": "bottom"
        },
        "info_2": {
          "show": false,
          "layout_row_1": "<title>< (%author_or_artist%)>",
          "horizontal_align": "right",
          "vertical_align": "bottom"
        },
        "font": {
          "name": null,
          "bold": null,
          "italic": null,
          "color": null
        },
        "height": 7,
        "paint_theme_effect": true
      },
      "slide_translation": "",
      "bible_version_tab": 1,
      "show_items": {
        "lyrics": true,
        "text": true,
        "verse": true,
        "image": true,
        "alert": true,
        "announcement": true
      }
    },
    {
      "id": "stream_html_1",
      "name": "Stream - HTML 1",
      "stage_view": {
        "enabled": true,
        "preview_mode": "FIRST_LINE_OF_THE_NEXT_SLIDE_WITH_SEPARATOR",
        "uppercase": false,
        "remove_line_break": false,
        "show_comment": true,
        "show_advanced_editor": false,
        "show_communication_panel": true,
        "custom_theme": null,
        "apply_custom_theme_to_bible": true,
        "apply_custom_theme_to_text": true
      },
      "slide_translation": "",
      "bible_version_tab": 1,
      "show_items": {
        "lyrics": true,
        "text": true,
        "verse": true,
        "image": true,
        "alert": true,
        "announcement": true
      }
    }
  ]
}

SetDisplaySettings

  • v2.19.0

Alterar as configurações de exibição de uma tela

Parâmetros:

Nome Tipo Descrição
input DisplaySettings Novas configurações. As configurações são individualmente opcionais. Preencha apenas os campos que deseja alterar.

Resposta:

Tipo Descrição
Object Retorna true ou uma lista com os erros ocorridos

Exemplo:

Requisição
{
  "id": "screen_2",
  "stage_view": {
    "enabled": true,
    "preview_mode": "FIRST_LINE_OF_THE_NEXT_SLIDE_WITH_SEPARATOR",
    "uppercase": true
  },
  "margin": {
    "top": 0,
    "right": 0,
    "bottom": 10,
    "left": 0
  }
}

Resposta
{
  "status": "ok",
  "data": true
}

GetTransitionEffectSettings

  • v2.21.0

Lista da configuração dos efeitos de transição

Resposta:

Nome Tipo Descrição
music TransitionEffectSettings
bible TransitionEffectSettings
image TransitionEffectSettings
announcement TransitionEffectSettings

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "music": {
      "enabled": true,
      "type": "fade",
      "duration": 500,
      "only_area_within_margin": false,
      "merge": false,
      "division_point": 30,
      "increase_duration_blank_slides": false
    },
    "bible": {
      "...": "..."
    },
    "image": {
      "...": "..."
    },
    "announcement": {
      "...": "..."
    }
  }
}

SetTransitionEffectSettings

  • v2.21.0

Alterar as configurações de um efeito de transição

Parâmetros:

Nome Tipo Descrição
id Object ID do item
settings TransitionEffectSettings Novas configurações. As configurações são individualmente opcionais. Preencha apenas os campos que deseja alterar.

Resposta:

Tipo Descrição
Object Retorna true ou uma lista com os erros ocorridos

Exemplo:

Requisição
{
  "id": "music",
  "settings": {
    "enabled": true,
    "type": "fade",
    "duration": 500,
    "only_area_within_margin": false,
    "merge": false,
    "division_point": 30,
    "increase_duration_blank_slides": false
  }
}

Resposta
{
  "status": "ok",
  "data": true
}

GetBibleVersions

  • v2.21.0

Retorna a lista de versões disponíveis da Bíblia, e também dos atalhos associados

Resposta:

Nome Tipo Descrição
data Object
data.*.key String Abreviação da versão ou o nome do atalho, se começar com '#shortcut '
data.*.title String Nome da versão
data.*.version String (opcional) Abreviação da versão. Disponível se o item for um atalho, ou seja se 'key' começar com '#shortcut '

Exemplo:

Resposta
{
  "status": "ok",
  "data": [
    {
      "key": "en_kjv",
      "title": "King James Version"
    },
    {
      "key": "en_akjv",
      "title": "American King James Version"
    },
    {
      "key": "#shortcut Example",
      "title": "King James Version",
      "version": "en_kjv"
    }
  ]
}

GetBibleSettings

  • v2.21.0

Configurações do módulo Bíblia

Resposta:

Nome Tipo Descrição
data BibleSettings

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "tab_version_1": "pt_???",
    "tab_version_2": "es_???",
    "tab_version_3": "en_???",
    "show_x_verses": 1,
    "uppercase": false,
    "show_only_reference": false,
    "show_second_version": false,
    "show_third_version": false,
    "book_panel_type": "grid",
    "book_panel_order": "automatic",
    "book_panel_order_available_items": [
      "automatic",
      "standard",
      "ru",
      "tyv"
    ],
    "multiple_verses_separator_type": "double_line_break",
    "versification": true,
    "theme": {
      "public": 123,
      "screen_n": null
    }
  }
}

SetBibleSettings

  • v2.21.0

Alterar as configurações do módulo Bíblia

Parâmetros:

Nome Tipo Descrição
input BibleSettings Novas configurações. As configurações são individualmente opcionais. Preencha apenas os campos que deseja alterar.

Resposta:

Tipo Descrição
Object Retorna true ou uma lista com os erros ocorridos

Exemplo:

Requisição
{
  "tab_version_1": "pt_acf",
  "show_x_verses": 1,
  "theme": {
    "public": "123"
  }
}

Resposta
{
  "status": "ok",
  "data": true
}

GetBpm

  • v2.19.0

Retorna o valor BPM atual definido no programa

Resposta:

Tipo Descrição
Number Valor BPM atual

Exemplo:

Resposta
{
  "status": "ok",
  "data": 80
}

SetBpm

  • v2.19.0

Altera o valor BPM atual do programa

Parâmetros:

Nome Tipo Descrição
bpm Number Valor BPM

Método sem retorno

Exemplo:

Requisição
{
  "bpm": 80
}

GetHue

  • v2.19.0

Retorna o valor matiz atual definido no programa

Resposta:

Tipo Descrição
Number Valor matiz atual. Mínimo=0, Máximo=360. Retorna null se desativado.

Exemplo:

Resposta
{
  "status": "ok",
  "data": 120
}

SetHue

  • v2.19.0

Altera o valor matiz atual do programa

Parâmetros:

Nome Tipo Descrição
hue Number Valor matiz. Mínimo=0, Máximo=360 ou null para desativar.

Método sem retorno

Exemplo:

Requisição
{
  "hue": null
}

GetRuntimeEnvironment

GetRE

  • v2.19.0

Retorna o nome do ambiente de execução definido atualmente nas configurações do programa.

Resposta:

Tipo Descrição
String Nome do ambiente de execução

Exemplo:

Resposta
{
  "status": "ok",
  "data": "runtime environment name"
}

SetRuntimeEnvironment

SetRE

  • v2.19.0

Altera o ambiente de execução atual.

Parâmetros:

Nome Tipo Descrição
name String Nome do ambiente de execução

Método sem retorno

Exemplo:

Requisição
{
  "name": "runtime environment name"
}

SetLogo

  • v2.19.0

Alterar as configurações da funcionalidade Logo do programa (menu ferramentas)

Parâmetros:

Nome Tipo Descrição
enable Boolean (opcional) Ativar/desativar a funcionalidade
hide Boolean (opcional) Exibir/ocultar a funcionalidade

Método sem retorno

Exemplo:

Requisição
{
  "enable": true,
  "hide": true
}

GetSyncStatus

  • v2.19.0

Retorna o estado atual da sincronização online via Google Drive™

Resposta:

Nome Tipo Descrição
data.enabled Boolean Se a sincronização está ativada
data.started Boolean Se a sincronização foi iniciada (internet disponível, por exemplo)
data.progress Number Progresso da sincronização de 0 a 100

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "enabled": true,
    "started": true,
    "progress": 99
  }
}

GetInterfaceInput

  • v2.21.0

Retorna o valor de um campo da interface do programa

Parâmetros:

Nome Tipo Descrição
id String ID do item. Pode ser:
main_lyrics_tab_search
main_text_tab_search
main_audio_tab_search
main_video_tab_search
main_image_tab_search
main_file_tab_search
main_automatic_presentation_tab_search
main_selected_theme

Resposta:

Tipo Descrição
String Conteúdo do item

Exemplo:

Requisição
{
  "id": "main_lyrics_tab_search"
}

Resposta
{
  "status": "ok",
  "data": "input value"
}

SetInterfaceInput

  • v2.21.0

Altera o valor de um campo da interface do programa

Parâmetros:

Nome Tipo Descrição
id String ID do item
value String Novo valor
focus Boolean (opcional) Fazer o componente receber o foco do sistema

Método sem retorno

Exemplo:

Requisição
{
  "id": "main_lyrics_tab_search",
  "value": "new input value",
  "focus": true
}

OpenDrawLots

  • v2.21.0

Abre a janela de sorteio a partir de uma lista de itens

Parâmetros:

Nome Tipo Descrição
items Array<String> Lista com os itens para serem sorteados

Método sem retorno

Exemplo:

Requisição
{
  "items": [
    "Item 1",
    "Item 2",
    "Item 3"
  ]
}

GetMediaDuration

  • v2.21.0

Retorna a duração da mídia

Parâmetros:

Nome Tipo Descrição
type String Tipo do item. Pode ser: video, audio, automatic_presentation
name String Nome do item

Resposta:

Nome Tipo Descrição
data.type String
data.name String
data.duration Number Duração em segundos
data.duration_ms Number Duração em milissegundos

Exemplo:

Requisição
{
  "type": "audio",
  "name": "file.mp3"
}

Resposta
{
  "status": "ok",
  "data": {
    "type": "audio",
    "name": "file.mp3",
    "duration": 128,
    "duration_ms": 128320
  }
}

GetVersion

  • v2.22.0

Retorna informações da versão do programa em execução

Resposta:

Nome Tipo Descrição
data.version String Versão do programa
data.platform String Sistema operacional. Pode ser: win uni osx
data.platformDescription String Nome detalhado do sistema operacional

Exemplo:

Resposta
{
  "status": "ok",
  "data": {
    "data": {
      "version": "2.22.0",
      "platform": "win",
      "platformDescription": "Windows 10"
    }
  }
}

Exemplo de implementação JavaScript

Utilize os métodos da classe JSLIB para criar sua própria implementação.
Se você criar sua própria implementação, é necessário retornar 'true' se quiser que o programa consuma a requisição utilizando a implementação padrão.
Qualquer valor retornado que seja diferente de 'true', o programa irá considerar que a requisição já foi consumida e vai respondê-la com o valor retornado.

function request(action, headers, content, info) {
    switch (action) {
        case 'my_custom_action':
            //executar sua própria ação e resposta
            return {'status': 'ok'}; //  <-  Resposta da requisição
    }
    //Retornando 'true' para o programa consumir esta requisição com a implementação padrão
    return true;
}

Parâmetros do método

action - Nome da ação

headers - Contém os cabeçalhos da requisição. Exemplo: headers.Authorization

content - Objeto com o conteúdo extraído da requisição. Exemplo: content.theme.id

info - Informações da requisição.
info.client_address Endereço da origem da requisição
info.token token de acesso utilizado na requisição
info.local true se a origem da requisição for da rede local
info.web true se a origem da requisição for da internet

Classes

Lyrics

Nome Tipo Descrição
id String ID da música
title String Título da música
artist String Artista da música
author String Autor da música
note String Anotação da música
copyright String Copyright da música
slides Array<Object> v2.21.0+
slides.*.text String Texto do slide v2.21.0+
slides.*.slide_description Number Descrição do slide v2.21.1+
slides.*.background_id Number ID do tema ou plano de fundo salvo para o slide v2.21.0+
order String Ordem dos slides (índice a partir do 1), separado por vírgula v2.21.0+
key String Tom da música.
Pode ser: C C# Db D D# Eb E F F# Gb G G# Ab A A# Bb B Cm C#m Dbm Dm D#m Ebm Em Fm F#m Gbm Gm G#m Abm Am A#m Bbm Bm
bpm Number BPM da música
time_sig String Tempo da música.
Pode ser: 2/2 2/4 3/4 4/4 5/4 6/4 3/8 6/8 7/8 9/8 12/8
groups Array<Group> Grupos onde a música está adicionada
linked_audio_file String Caminho do arquivo de áudio linkado com a música v2.22.0+
linked_backing_track_file String Caminho do arquivo de áudio (playback) linkado com a música v2.22.0+
streaming Object URI ou ID dos streamings v2.22.0+
streaming.audio Object Áudio v2.22.0+
streaming.audio.spotify String v2.22.0+
streaming.audio.youtube String v2.22.0+
streaming.audio.deezer String v2.22.0+
streaming.backing_track Object Playback v2.22.0+
streaming.backing_track.spotify String v2.22.0+
streaming.backing_track.youtube String v2.22.0+
streaming.backing_track.deezer String v2.22.0+
midi Midi Atalho MIDI do item
extras Object Mapa de objetos extras (adicionados pelo usuário) v2.21.0+
archived Boolean Se a música está arquivada
Ver exemplo
{
  "id": "0",
  "title": "",
  "artist": "",
  "author": "",
  "note": "",
  "copyright": "",
  "slides": [
    {
      "text": "Slide 1 line 1\nSlide 1 line 2",
      "slide_description": "Verse 1",
      "background_id": null
    },
    {
      "text": "Slide 2 line 1\nSlide 2 line 2",
      "slide_description": "Chorus",
      "background_id": null
    },
    {
      "text": "Slide 3 line 1\nSlide 3 line 2",
      "slide_description": "Verse 3",
      "background_id": null
    }
  ],
  "order": "1,2,3,2,2",
  "key": "",
  "bpm": 0.0,
  "time_sig": "",
  "groups": [],
  "linked_audio_file": "",
  "linked_backing_track_file": "",
  "streaming": {
    "audio": {
      "spotify": "",
      "youtube": "",
      "deezer": ""
    },
    "backing_track": {
      "spotify": "",
      "youtube": "",
      "deezer": ""
    }
  },
  "extras": {
    "extra": ""
  },
  "archived": false
}

Text

Nome Tipo Descrição
id String ID do texto
title String Título do texto
folder String Caminho da pasta de localização
theme String ID do tema salvo para o texto
slides Array<Object>
slides.*.text String Texto do slide
slides.*.background_id Number ID do tema ou plano de fundo salvo para o slide
Ver exemplo
{
  "id": "",
  "title": "",
  "folder": "",
  "theme": null,
  "slides": [
    {
      "text": "Slide 1 line 1\nSlide 1 line 2",
      "background_id": null
    },
    {
      "text": "Slide 2 line 1\nSlide 2 line 2",
      "background_id": null
    },
    {
      "text": "Slide 3 line 1\nSlide 3 line 2",
      "background_id": null
    }
  ]
}

Theme

Nome Tipo Descrição
copy_from_id String (opcional) ID de um Tema existente para utilizar como cópia inicial ao criar um novo item
id String ID do item
name String Nome do item

background

Plano de fundo
background.type String Tipo do plano de fundo. Pode ser: color my_video my_image video image pattern transparent image_file video_file
background.id String

Tipo

Valor

color

Cor no formato hexadecimal

my_video

ID do item

my_image

ID do item

video

ID do item

image

ID do item

pattern

ID do item

transparent

"transparent"

image_file

Nome do arquivo na biblioteca

video_file

Nome do arquivo na biblioteca
background.adjust_type String fill extend adjust side_by_side center
Disponível para: type=my_image, type=image
background.opacity Number Opacidade. 0 ~ 100
background.velocity Number Disponível para: type=my_video, type=video
0.25 ~ 4.0
base_color String Cor no formato hexadecimal. Cor base do plano de fundo ao diminuir a opacidade.

font

Fonte
font.name String Nome da fonte
font.bold Boolean Negrito
font.italic Boolean Itálico
font.size Number Tamanho 0.0 ~ 0.4
Valor em porcentagem, baseado na altura do slide.
font.color String Cor no formato hexadecimal
font.line_spacing Number Espaçamento entre linhas. -0.5 ~ 1.0
Valor em porcentagem baseado na altura da linha.
font.char_spacing Number Espaçamento entre caracteres. -40 ~ 120

align

Alinhamento
align.horizontal String left center right justify
align.vertical String top middle bottom
align.margin.top Number 0 ~ 90
align.margin.right Number 0 ~ 90
align.margin.bottom Number 0 ~ 90
align.margin.left Number 0 ~ 90

effect

Efeitos da fonte
effect.outline_color String Cor no formato hexadecimal
effect.outline_weight Number 0.0 ~ 100.0
effect.brightness_color String Cor no formato hexadecimal
effect.brightness_weight Number 0.0 ~ 100.0
effect.shadow_color String Cor no formato hexadecimal
effect.shadow_x_weight Number -100.0 ~ 100.0
effect.shadow_y_weight Number -100.0 ~ 100.0
effect.blur Boolean Aplicar efeito 'blur' no brilho e sombra

shape_fill

Cor de fundo
shape_fill.type String box line line_fill theme_margin
shape_fill.enabled Boolean
shape_fill.color String Cor no formato hexadecimal (RGBA)
shape_fill.margin.top Number 0 ~ 100
shape_fill.margin.right Number 0 ~ 100
shape_fill.margin.bottom Number 0 ~ 100
shape_fill.margin.left Number 0 ~ 100
shape_fill.corner Number 0 ~ 100

shape_outline

Contorno
shape_outline.type String box line line_fill theme_margin
shape_outline.enabled Boolean
shape_outline.color String Cor no formato hexadecimal (RGBA)
shape_outline.outline_thickness Number 0 ~ 25
shape_outline.margin.top Number 0 ~ 100
shape_outline.margin.right Number 0 ~ 100
shape_outline.margin.bottom Number 0 ~ 100
shape_outline.margin.left Number 0 ~ 100
shape_outline.corner Number 0 ~ 100

comment

Comentário
comment.font_name String Nome da fonte
comment.bold Boolean Negrito
comment.italic Boolean Itálico
comment.relative_size Number tamanho relativo da fonte. 40 ~ 100
comment.color String Cor no formato hexadecimal

settings

Configurações
settings.uppercase Boolean Exibir o texto em maiúsculo
settings.line_break String Aplicar quebra de linha. system true false
Padrão: system
Ver exemplo
{
  "id": "123",
  "name": "",
  "background": {
    "type": "color", "id": "212121", "opacity": 100
  },
  "base_color": "FFFFFF",
  "font": {
    "name": "CMG Sans", "bold": true,
    "italic": false,
    "size": 10.0,
    "color": "F5F5F5", "line_spacing": 0.3,
    "char_spacing": 0
  },
  "align": {
    "horizontal": "center", "vertical": "middle", "margin": {
      "top": 3.0,
      "right": 3.0,
      "bottom": 3.0,
      "left": 3.0
    }
  },
  "effect": {
    "outline_color": "404040", "outline_weight": 0.0,
    "brightness_color": "C0C0C0", "brightness_weight": 0.0,
    "shadow_color": "404040", "shadow_x_weight": 0.0,
    "shadow_y_weight": 0.0,
    "blur": true
  },
  "shape_fill": {
    "type": "box", "enabled": false,
    "color": "000000", "margin": {
      "top": 5.0,
      "right": 30.0,
      "bottom": 10.0,
      "left": 30.0
    },
    "corner": 0
  },
  "shape_outline": {
    "type": "box", "enabled": false,
    "color": "000000", "outline_thickness": 10,
    "margin": {
      "top": 5.0,
      "right": 30.0,
      "bottom": 10.0,
      "left": 30.0
    },
    "corner": 0
  },
  "comment": {
    "font_name": "Arial", "bold": false,
    "italic": true,
    "relative_size": 100,
    "color": "A0A0A0"
  },
  "settings": {
    "uppercase": false,
    "line_break": "system"
  }
}

Background

Nome Tipo Descrição
id String ID do item
type String Tipo do item. Pode ser: theme my_video my_image video image
name String Nome do item
tags Array<String> Lista de tags do item
bpm Number Valor BPM do item
midi Midi (opcional) Atalho MIDI do item
Ver exemplo
{
  "id": "10",
  "type": "video",
  "name": "Hexagons",
  "tags": [],
  "bpm": 0.0
}

Slide Description

Nome Tipo Descrição
name String Nome do item
tag String Nome curto do item
aliases Array<String> Lista com os nomes alternativos
font_color String Cor da fonte no formato hexadecimal
bg_color String Cor de fundo no formato hexadecimal
background Number ID do plano de fundo personalizado
midi Midi (opcional) Atalho MIDI do item
Ver exemplo
{
  "name": "Chorus",
  "tag": "C",
  "aliases": [],
  "font_color": "FFFFFF",
  "bg_color": "000080",
  "background": null,
  "midi": null
}

Item

Nome Tipo Descrição
id String ID do item
type String Tipo do item. Pode ser: title song verse text audio video image file announcement automatic_presentation countdown countdown_cp cp_text plain_text uri global_action api script
name String Nome do item

Group

Nome Tipo Descrição
name String Nome do item
songs Array<Number> Lista dos IDs das músicas

Announcement

Nome Tipo Descrição
id String ID do item
name String Nome do item
text String Texto do anúncio
archived Boolean Se o item está arquivado

Midi

Nome Tipo Descrição
code Number Código midi
velocity Number Velocidade/intensidade midi
Ver exemplo
{
  "code": 80,
  "velocity": 20
}

Favorite Item

Nome Tipo Descrição
id String ID do item
name String Nome do item
Nome Tipo Descrição
name String Nome do item
week String Semana. Pode ser: all first second third fourth last
day String Dia da semana. Pode ser: sun mon tue wed thu fri sat
hour Number Hora [0-23]
minute Number Minuto [0-59]
type String Tipo do item. Pode ser: service event
hide_week Array<String> Lista com as semanas ocultadas. Disponível se week=all

Event

Nome Tipo Descrição
name String Nome do evento
datetime String Data e hora no formato: YYYY-MM-DD HH:MM
wallpaper String Caminho relativo do arquivo utilizado como papel de parede do evento

Schedule

Nome Tipo Descrição
type String Tipo da lista de reprodução. Pode ser: temporary, service, event
name String
datetime String Data e hora no formato: YYYY-MM-DD HH:MM
lyrics_playlist Array<Lyrics> Lista de letras
media_playlist Array<Item> Lista de mídias
responsible Member Integrante definido como responsável pelo evento
members Array<Object> Lista de integrantes
members.*.id String ID do integrante
members.*.name String Nome do integrante escalado
members.*.scheduled Boolean Se o integrande está escalado ou definido para uma função
roles Array<Object> Lista das funções na escala
roles.*.id String ID da função
roles.*.name String Nome da função
roles.*.member Member Integrante escalado para a função
notes String Anotações v2.21.0+
Ver exemplo
{
  "type": "temporary",
  "name": "",
  "datetime": "2024-01-16 20:00",
  "lyrics_playlist": [
    {
      "id": 1,
      "title": "Title 1",
      "artist": "",
      "author": "",
      "...": ".."
    },
    {
      "id": 2,
      "title": "Title 2",
      "artist": "",
      "author": "",
      "...": ".."
    },
    {
      "id": 3,
      "title": "Title 3",
      "artist": "",
      "author": "",
      "...": ".."
    }
  ],
  "media_playlist": [
    {
      "id": "a",
      "type": "video",
      "name": "file.mp4"
    },
    {
      "id": "b",
      "type": "audio",
      "name": "file.mp3"
    },
    {
      "id": "c",
      "type": "image",
      "name": "file.jpg"
    }
  ],
  "responsible": null,
  "members": [],
  "roles": [],
  "notes": ""
}

Team

Nome Tipo Descrição
id String ID do item
name String Nome do item
description String Descrição do item

Member

Nome Tipo Descrição
id String ID do item
name String Nome do item
skills String Habilidades
roles Array<Role> Funções

Role

Nome Tipo Descrição
id String ID do item
name String Nome do item
team Team Time

Automatic Presentation

Nome Tipo Descrição
seconds Number Tempo que cada item ficará sendo apresentado
repeat Boolean true para ficar repetindo a apresentação (voltar para o primeiro item após o último)

Presentation Slide Info

Nome Tipo Descrição
number Number Número do slide (começa em 1)
text String Texto do slide
theme_id String ID do tema do slide
slide_description String (opcional) Nome da descrição do slide. Disponível se for uma apresentação de música.
preview String (opcional) Imagem no formato base64

Input Param

Utiliza a mesma estrutura/sintaxe da funcionalidade FunctionInput documentação

Trigger Item

Nome Tipo Descrição
id String (opcional) ID do item
when String displaying closing change
item String Tipo do item. Pode ser:
when=displaying: any_song any_text any_verse any_announcement any_audio any_video any_image any_automatic_presentation any_song_slide any_text_slide any_ppt_slide any_theme any_background any_title_subitem any_webcam any_countdown any_automatic_presentation_slide f8 f9 f10

when=closing: any_song any_text any_verse any_announcement any_audio any_video any_image any_automatic_presentation any_webcam f8 f9 f10

when=change: countdown_seconds_public countdown_seconds_communication_panel timer_seconds_communication_panel wallpaper wallpaper_service stage playlist bpm hue
action Function Ação que será executada
Ver exemplo
{
  "id": "",
  "when": "displaying",
  "item": "any_song",
  "action": function(obj) { /* TODO */ }
}

Play Media Settings

Configurações para execução da mídia

Nome Tipo Descrição
volume Number Altera o volume do player
repeat Boolean Altera a opção repetir
shuffle Boolean Altera a opção aleatório
start_time String Tempo inicial para execução no formato SS, MM:SS ou HH:MM:SS
stop_time String Tempo final para execução no formato SS, MM:SS ou HH:MM:SS
Ver exemplo
{
  "volume": "80",
  "repeat": true,
  "shuffle": false,
  "start_time": "00:30",
  "stop_time": "02:00"
}

Display Settings

Configurações de exibição

Nome Tipo Descrição
id String ID do item. public screen_2 screen_3 screen_? stream_image stream_html_1 stream_html_2 stream_html_3
name String Nome do item
stage_view StageView Configurações da visão do palco. (Indisponível para tela público)
slide_info SlideAdditionalInfo Informações adicionais do slide
slide_translation String Nome da tradução
bible_version_tab Number Número da aba (1, 2 ou 3) da tradução da Bíblia exibida na tela, conforme traduções carregadas na janela da Bíblia
margin Object Margens definidas na opção Editar posição da tela. margin.top, margin.right, margin.bottom, margin.left
area Rectangle Área da tela com as margens aplicadas (se disponível)
total_area Rectangle Área total da tela no sistema
hide Boolean Ocultar a tela
show_items Object Define os tipos de apresentação que serão exibidos (disponível apenas para telas de transmissão - imagem e html)
show_items.lyrics Boolean Letra de música
show_items.text Boolean Texto
show_items.verse Boolean Versículo
show_items.image Boolean Imagem
show_items.alert Boolean Alerta
show_items.announcement Boolean Anúncio
media_player.show Boolean Exibir VLC Player v2.20.0+
media_player.margin Rectangle Margem para exibição dos vídeos pelo VLC Player v2.20.0+
Ver exemplo
{
  "id": "public",
  "name": "Público",
  "slide_info": {
    "info_1": {
      "show_page_count": false,
      "show_slide_description": false,
      "horizontal_align": "right",
      "vertical_align": "bottom"
    },
    "info_2": {
      "show": false,
      "layout_row_1": "<title>< (%author_or_artist%)>",
      "horizontal_align": "right",
      "vertical_align": "bottom"
    },
    "font": {
      "name": null,
      "bold": null,
      "italic": null,
      "color": null
    },
    "height": 7,
    "paint_theme_effect": true
  },
  "slide_translation": null,
  "margin": {
    "top": 0.0,
    "right": 0.0,
    "bottom": 0.0,
    "left": 0.0
  },
  "area": {
    "x": 0,
    "y": 0,
    "width": 0,
    "height": 0
  },
  "total_area": {
    "x": 0,
    "y": 0,
    "width": 0,
    "height": 0
  },
  "hide": false,
  "media_player": {
    "margin": {
      "top": 0.0,
      "right": 0.0,
      "bottom": 0.0,
      "left": 0.0
    },
    "area": {
      "x": 0,
      "y": 0,
      "width": 0,
      "height": 0
    }
  }
}

Transition Effect Settings

Nome Tipo Descrição
type String Tipo de efeito. Pode ser: random fade slide accordion linear_fade zoom curtain
enabled Boolean Se está ativado ou desativado
duration Number Duração total da transição (em milissegundos) 200 ~ 2400
only_area_within_margin Number Realiza o efeito de transição apenas dentro da margem definida no Tema. (Disponível somente para transição de texto)

type=fade
merge Object Valores aceitos: true, false
division_point Object Valores aceitos: min: 10, max: 100
increase_duration_blank_slides Object Valores aceitos: true, false

type=slide
direction Object Valores aceitos: random, left, up
slide_move_type Object Valores aceitos: random, move_new, move_old, move_both

type=accordion
direction Object Valores aceitos: random, horizontal, vertical

type=linear_fade
direction Object Valores aceitos: random, horizontal, vertical, up, down, left, right
distance Object Valores aceitos: min: 5, max: 90
fade Object Valores aceitos: min: 2, max: 90

type=zoom
zoom_type Object Valores aceitos: random, increase, decrease
directions Object Valores aceitos: {
  top_left: boolean,
  top_center: boolean,
  top_right: boolean,
  middle_left: boolean,
  middle_center: boolean,
  middle_right: boolean,
  bottom_left: boolean,
  bottom_center: boolean,
  bottom_right: boolean
}

type=curtain
direction Object Valores aceitos: random, horizontal, vertical
direction_lines Object Valores aceitos: random, down_right, up_left, alternate
slide_move_type Object Valores aceitos: random, new, old, both

type=random
random_enabled_types Object Valores aceitos: {
  fade: boolean,
  slide: boolean,
  accordion: boolean,
  linear_fade: boolean,
  zoom: boolean,
  curtain: boolean
}
Ver exemplo
{
  "enabled": true,
  "type": "fade",
  "duration": 500,
  "only_area_within_margin": false,
  "merge": false,
  "division_point": 30,
  "increase_duration_blank_slides": false
}

Bible Settings

Nome Tipo Descrição
tab_version_1 String Versão da Bíblia definida na primeira aba
tab_version_2 String Versão da Bíblia definida na segunda aba
tab_version_3 String Versão da Bíblia definida na terceira aba
show_x_verses Number Quantidade de versículos exibidos na projeção
uppercase Boolean Exibir o texto do versículo em maiúsculo
show_only_reference Boolean Exibir somente a referência do versículo
show_two_versions Boolean deprecated Substituído por: show_second_version show_third_version
Exibir duas versões.
show_second_version Boolean Exibir segunda versão v2.22.0+
show_third_version Boolean Exibir terceira versão v2.22.0+
book_panel_type String Tipo de visualização dos livros da Bíblia grid list
book_panel_order String Tipo de ordenação dos livros da Bíblia
book_panel_order_available_items Array<String>
multiple_verses_separator_type String Tipo de separação na exibição de múltiplos versículos. Pode ser: no_line_break, single_line_break, double_line_break
multiple_versions_separator_type String Tipo de separação na exibição de múltiplas versões. Pode ser: no_line_break, single_line_break, double_line_break v2.22.0+
versification Boolean Aplicar mapeamento de versículos
theme Object ID do Tema de exibição para as diferentes telas do sistema
theme.public String
theme.screen_n String n >= 2
Ver exemplo
{
  "tab_version_1": "pt_???",
  "tab_version_2": "es_???",
  "tab_version_3": "en_???",
  "show_x_verses": 1,
  "uppercase": false,
  "show_only_reference": false,
  "show_two_versions": false,
  "show_second_version": false,
  "show_third_version": false,
  "book_panel_type": "grid",
  "book_panel_order": "automatic",
  "book_panel_order_available_items": [
    "automatic", "standard", "ru", "tyv"
  ],
  "multiple_verses_separator_type": "double_line_break",
  "multiple_versions_separator_type": "double_line_break",
  "versification": true,
  "theme": {
    "public": 123,
    "screen_n": null
  }
}

Font Settings

Nome Tipo Descrição
font_name String (opcional) Nome da fonte Padrão: null
bold Boolean (opcional) Negrito Padrão: null
italic Boolean (opcional) Itálico Padrão: null
color String (opcional) Cor em hexadecimal Padrão: null

Stage View

Nome Tipo Descrição
enabled Boolean Visão do palco ativada
preview_mode String Modo de visualização das letras. Opções disponíveis:
CURRENT_SLIDE
FIRST_LINE_OF_THE_NEXT_SLIDE_WITH_SEPARATOR
FIRST_LINE_OF_THE_NEXT_SLIDE_WITHOUT_SEPARATOR
NEXT_SLIDE
CURRENT_AND_NEXT_SLIDE
ALL_SLIDES
uppercase Boolean Exibir em maiúsculo
remove_line_break Boolean Remover quebra de linha
show_comment Boolean Exibir comentários
show_advanced_editor Boolean Exibir edições avançadas
show_communication_panel Boolean Exibir conteúdo do painel de comunicação
show_next_image Boolean Exibir imagem seguinte v2.21.0+
custom_theme Number ID do tema personalizado utilizado nas apresentações
apply_custom_theme_to_bible Boolean Utilizar o tema personalizado nos versículos
apply_custom_theme_to_text Boolean Utilizar o tema personalizado nos textos
apply_custom_theme_to_quick_presentation Boolean Utilizar o tema personalizado na opção Apresentação Rápida v2.21.0+
Ver exemplo
{
  "enabled": false,
  "preview_mode": "FIRST_LINE_OF_THE_NEXT_SLIDE_WITH_SEPARATOR",
  "uppercase": false,
  "remove_line_break": false,
  "show_comment": true,
  "show_advanced_editor": false,
  "show_communication_panel": true,
  "show_next_image": false,
  "custom_theme": null,
  "apply_custom_theme_to_bible": true,
  "apply_custom_theme_to_text": true,
  "apply_custom_theme_to_quick_presentation": false
}

Slide Additional Info

Nome Tipo Descrição
info_1 Object
info_1.show_page_count Boolean Exibir contador de slides
info_1.show_slide_description Boolean Exibir descrição do slide (coro, por exemplo)
info_1.horizontal_align String Alinhamento horizontal da informação no slide. left, center, right
info_1.vertical_align String Alinhamento vertical da informação no slide. top, bottom
info_2 Object
info_2.show Boolean
info_2.layout_row_1 String Layout da informação da primeira linha Slide Additional Info Layout
info_2.layout_row_2 String (opcional) Layout da informação da segunda linha Slide Additional Info Layout
info_2.horizontal_align String Alinhamento horizontal da informação no slide. left, center, right
info_2.vertical_align String Alinhamento vertical da informação no slide. top, bottom
font Object
font.name String Nome da fonte. Se for null, utiliza a fonte padrão do tema.
font.bold Boolean Negrito. Se for null, utiliza a configuração padrão do tema
font.italic Boolean Itálido. Se for null, utiliza a configuração padrão do tema
font.color String Cor da fonte em hexadecimal. Se for null, utiliza a cor da fonte padrão do tema
height Number Altura em porcentagem em relação à altura do slide 4 ~ 15
paint_theme_effect String Renderizar o texto com os efeitos contorno, brilho e sombra do tema, se disponível
Ver exemplo
{
  "info_1": {
    "show_page_count": false,
    "show_slide_description": false,
    "horizontal_align": "right", "vertical_align": "bottom"
  },
  "info_2": {
    "show": false,
    "layout_row_1": "<title>< (%author_or_artist%)>", "horizontal_align": "right", "vertical_align": "bottom"
  },
  "font": {
    "name": null,
    "bold": null,
    "italic": null,
    "color": null
  },
  "height": 7,
  "paint_theme_effect": true
}

Rectangle

Nome Tipo Descrição
x Number
y Number
width Number
height Number

Custom Message

Nome Tipo Descrição
id String ID do item
name String Nome do item
message_model String Mensagem sem preenchimento
message_example String Mensagem de exemplo com o nome dos parâmetros preenchidos
variables Array<CustomMessageParam> Parâmetros da mensagem
Ver exemplo
{
  "id": "123",
  "name": "Chamar pessoa",
  "message_model": "   , favor comparecer  .",
  "message_example": "função nome, favor comparecer local.",
  "variables": [
    {
      "position": 0,
      "name": "função",
      "only_number": false,
      "uppercase": false,
      "suggestions": [
        "Diácono",
        "Presbítero",
        "Pastor",
        "Professor",
        "Ministro"
      ]
    },
    {
      "position": 2,
      "name": "nome",
      "only_number": false,
      "uppercase": false,
      "suggestions": []
    },
    {
      "position": 22,
      "name": "local",
      "only_number": false,
      "uppercase": false,
      "suggestions": [
        "ao estacionamento",
        "ao hall de entrada",
        "à mesa de som",
        "ao berçário"
      ]
    }
  ]
}

Custom Message Param

Nome Tipo Descrição
position Number Posição do parâmetro na mensagem (em número de caracteres)
name String Nome do item
only_number Boolean Parâmetro aceita somente números
uppercase Boolean Parâmetro exibido sempre em maiúsculo
suggestions Array<String> (opcional) Lista com valores padrões para o parâmetro
Ver exemplo
{
  "position": 0,
  "name": "",
  "only_number": false,
  "uppercase": false,
  "suggestions": []
}

Quiz Question

Nome Tipo Descrição
title String Pergunta
alternatives Array<String> Alternativas
correct_alternative_number Number (opcional) Número da alternativa correta. Começa em 1 Padrão: 1
source String (opcional) Fonte da resposta
Ver exemplo
{
  "title": "...",
  "alternatives": [
    "Item 1", "Item 2", "Item 3"
  ],
  "correct_alternative_number": 2,
  "source": ""
}

Quiz Settings

Nome Tipo Descrição
correct_answer_color_font String (opcional) Cor da fonte para a resposta correta
correct_answer_color_background String (opcional) Cor de fundo para a resposta correta
incorrect_answer_color_font String (opcional) Cor da fonte para a resposta incorreta
incorrect_answer_color_background String (opcional) Cor de fundo para a resposta incorreta
question_and_alternatives_different_slides Boolean (opcional) Exibir a pergunta e as alternativas em slides separados Padrão: false
display_alternatives_one_by_one Boolean (opcional) Exibir as alternativas uma a uma Padrão: true
alternative_char_type String (opcional) Tipo de caractere para listar as alternativas number (1, 2, 3...) alpha (A, B, C...) Padrão: 'alpha'
alternative_separator_char String (opcional) Caractere separador. Valores permitidos: . ) - : Padrão: '.'
Ver exemplo
{
  "correct_answer_color_font": "00796B",
  "correct_answer_color_background": "CCFFCC",
  "incorrect_answer_color_font": "721C24",
  "incorrect_answer_color_background": "F7D7DB",
  "question_and_alternatives_different_slides": false,
  "display_alternatives_one_by_one": true,
  "alternative_separator_char": ".",
  "alternative_char_type": "alpha"
}

AddItem

Nome Tipo Descrição
type String Tipo do item. Pode ser: title song verse text audio video image file announcement automatic_presentation countdown countdown_cp cp_text plain_text uri global_action api script

AddItemTitle

Nome Tipo Descrição
type String title
name String Nome do item
background_color String (opcional) Cor de fundo em hexadecimal, exemplo: 000080
collapsed Boolean (opcional) Padrão: false
Ver exemplo
{
  "type": "title",
  "name": "Exemplo",
  "background_color": "0000FF",
  "collapsed": false
}

AddItemSong

Nome Tipo Descrição
type String song
id String ID do item
Ver exemplo
{
  "type": "song",
  "id": "123"
}

AddItemVerse

id, ids ou references

Nome Tipo Descrição
type String verse
id String (opcional) Para exibir um versículo. ID do item no formato LLCCCVVV.
Exemplo: '19023001' (livro 19, capítulo 023, versículo 001)
ids Array<String> (opcional) Para exibir uma lista de versículos. Lista com o ID de cada versículo.
Exemplo: ['19023001', '43003016', '45012002']
references String (opcional) Referências. Exemplo: João 3:16 ou Rm 12:2 ou Gn 1:1-3 Sl 23.1
version String (opcional) Nome ou abreviação da tradução utilizada v2.21.0+
Ver exemplo
{
  "type": "verse",
  "references": "Ps 23.1-6 Rm 12.2",
  "version": "en_kjv"
}

AddItemText

Nome Tipo Descrição
type String text
id String ID do item
Ver exemplo
{
  "type": "text",
  "id": "xyz"
}

AddItemAudio

Nome Tipo Descrição
type String audio
name String Nome do arquivo
settings PlayMediaSettings (opcional) Configurações para execução da mídia v2.21.0+
Ver exemplo
{
  "id": "",
  "type": "audio",
  "name": "file.mp3",
  "isDir": false
}

AddItemVideo

Nome Tipo Descrição
type String video
name String Nome do arquivo
settings PlayMediaSettings (opcional) Configurações para execução da mídia v2.21.0+
Ver exemplo
{
  "id": "",
  "type": "video",
  "name": "file.mp4",
  "isDir": false
}

AddItemImage

Nome Tipo Descrição
type String image
name String Nome do arquivo
Ver exemplo
{
  "type": "image",
  "name": "file.ext"
}

AddItemAutomaticPresentation

Nome Tipo Descrição
type String automatic_presentation
name String Nome do arquivo
Ver exemplo
{
  "type": "automatic_presentation",
  "name": "filename.ap"
}

AddItemAnnouncement

id, ids, name ou names

Nome Tipo Descrição
type String announcement
id String (opcional) ID do anúncio. Pode ser all para exibir todos
ids Array<String> (opcional) Lista com o ID de cada anúncio
name String (opcional) Nome do anúncio
names Array<String> (opcional) Lista com o nome de cada anúncio
automatic Automatic (opcional) Se informado, a apresentação dos itens será automática
Ver exemplo
{
  "type": "announcement",
  "names": [
    "Anúncio 1", "Anúncio 2", "Anúncio 3"
  ],
  "automatic": {
    "seconds": 10,
    "repeat": true
  }
}

AddItemCountdown

Nome Tipo Descrição
type String countdown
time String HH:MM ou MM:SS
exact_time Boolean (opcional) Se true, time deve ser HH:MM (hora e minuto exato). Se false, time deve ser MM:SS (quantidade de minutos e segundos) Padrão: false
text_before String (opcional) Texto exibido na parte superior da contagem regressiva
text_after String (opcional) Texto exibido na parte inferior da contagem regressiva
zero_fill Boolean (opcional) Preencher o campo 'minuto' com zero à esquerda Padrão: false
countdown_relative_size Number (opcional) Tamanho relativo da contagem regressiva Padrão: 250
theme String (opcional) ID do Tema v2.21.0+
countdown_style FontSettings (opcional) Fonte personalizada para a contagem regressiva v2.21.0+
Ver exemplo
{
  "type": "countdown",
  "time": "05:00",
  "exact_time": false,
  "text_before": "",
  "text_after": "",
  "zero_fill": false,
  "countdown_relative_size": 250,
  "theme": null,
  "countdown_style": {
    "font_name": null,
    "bold": null,
    "italic": true,
    "color": null
  }
}

AddItemCountdownCommunicationPanel

Nome Tipo Descrição
type String countdown_cp
minutes Number Quantidade de minutos
seconds Number Quantidade de segundos
stop_at_zero Boolean (opcional) Parar a contagem regressiva ao chegar em zero Padrão: false
description String Descrição do item
Ver exemplo
{
  "type": "countdown_cp",
  "minutes": 5,
  "seconds": 0,
  "stop_at_zero": false,
  "description": ""
}

AddItemTextCommunicationPanel

Nome Tipo Descrição
type String cp_text
name String Nome do item
text String Texto
display_ahead Boolean (opcional) Alterar a opção 'exibir à frente de tudo'
Ver exemplo
{
  "type": "cp_text",
  "name": "",
  "text": "Exemplo",
  "display_ahead": false
}

AddItemScript

Nome Tipo Descrição
type String script
id String ID do item
description String Descrição do item
inputs Object (opcional) Valor padrão para Function Input
Ver exemplo
{
  "type": "script",
  "id": "xyz",
  "description": "",
  "inputs": {
    "message": "Exemplo", "duration": 30
  }
}

AddItemAPI

Nome Tipo Descrição
type String api
id String ID do item
description String Descrição do item
inputs Object (opcional) Valor padrão para Function Input
Ver exemplo
{
  "type": "api",
  "id": "xyz",
  "description": "",
  "inputs": {
    "message": "Exemplo", "duration": 30
  }
}

AddItemURI

Nome Tipo Descrição
type String uri
title String Título do item
uri_type String Pode ser: spotify youtube deezer
value String URI
Ver exemplo
{
  "type": "uri",
  "title": "Holyrics",
  "uri_type": "youtube",
  "value": "https://youtube.com/watch?v=umYQpAxL4dI"
}

AddItemGlobalAction

Nome Tipo Descrição
type String global_action
action String Pode ser: slide_exit vlc_stop vlc_stop_fade_out