API: Bloco de Repetição (variante 23)
Template, linhas e HTML do bloco de repetição: listar, criar, editar, remover e reordenar via API pages.
- Publicado em 04/08/2026
- Atualizado em 08/10/2026
- Equipe do Interago
Este guia detalha o bloco de repetição (variante 23) do módulo pages: um template HTML de item, várias linhas (itens) e o HTML publicado do bloco. Para o restante do módulo (páginas, outros blocos, rascunhos), veja API: Módulo Páginas e Blocos (pages).
⚠️ A API precisa estar habilitada para utilizá-la. Veja o passo a passo em API - Como habilitar.
Endpoint: https://app.interago.com.br/App/Api/index.php
Todas as chamadas são POST com:
- Cabeçalho
Authorization: Bearer SEU_TOKEN websiteIdno corpomoduleemethodidentificando o recurso
Ative a API e gere o token em #api.main?general (veja API - Como habilitar). Limite: 60 requisições autenticadas por minuto por website. Trate o token como senha.
No painel, o testador e a documentação do método ficam em #api.main?{módulo}&{método}.
O que é a variante 23
- Template — HTML de um item (com campos editáveis). Define a estrutura de cada linha.
- Linhas — cada item do bloco (valores dos campos + HTML da linha).
- HTML publicado — o
contentdo bloco (todas as linhas montadas), usado no site após build/publish das páginas.
A API mantém o estado estruturado do editor internamente. Não envie virtualContent — a API gera e atualiza esse dado; envio manual retorna 422.
Definir ou redefinir o template
Use createBlock (bloco novo, variante 23) ou proposeBlockContent / applyBlockContent com content = HTML de um item.
- A API cria/atualiza o template e gera 1 linha.
- Os
fieldNamecomeçam vazios (nomeie no painel se precisar). - Não envie
virtualContent. - Se o bloco estiver em formato legado/vazio, a API pode retornar
422 REPETITION_NOT_READY— reenvie o template comapplyBlockContent(content) ou abra o bloco no painel.
curl -X POST 'https://app.interago.com.br/App/Api/index.php' \ -H 'Authorization: Bearer SEU_TOKEN' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'websiteId=SEU_WEBSITE_ID&module=pages&method=applyBlockContent&blockinwebsiteId=10&content=%3Cdiv%3E%3Ch3%3ET%C3%ADtulo%3C%2Fh3%3E%3Cp%3ETexto%3C%2Fp%3E%3C%2Fdiv%3E'
operations não gerencia linhas
operations é find/replace no HTML publicado do bloco — não cria, edita nem remove itens do editor de repetição. Para gerenciar linhas, use os métodos abaixo.
Métodos de linhas
| Método | Para que serve |
listBlockLines | Lista linhas paginado (page/pageSize ou offset/limit; padrão 50, máx. 200). Resposta: lineCount (total) + lines da página. includeHtml=1 formata HTML só da página. Com includeTemplate=1, inclui o schema do template. |
createBlockLine | Cria linha(s) com valores vazios (estrutura do item; não copia o texto do template como o botão do painel). Rate limit: 30 req/min e 200 linhas/min por loja (429 RATE_LIMITED). Valores de campo máx. 16KB. |
updateBlockLine | Atualiza valores de campos de uma linha (fields JSON). |
deleteBlockLine | Remove uma linha. Bloqueia a última (422 LINE_LAST_FORBIDDEN). |
reorderBlockLines | Reordena: envie lineIds (JSON com todos os IDs na nova ordem). |
HTML por linha e do bloco
lines[].lineHtml— HTML de cada item. EmlistBlockLines,includeHtml=1por padrão. Em create/update/delete/reorder o padrão é0(envieincludeHtml=1para receber HTML da linha).contentnas respostas de list/create/update/delete/reorder — HTML completo do bloco.getBlockcomincludeContent=1— mesmo HTML completo do bloco.
curl -X POST 'https://app.interago.com.br/App/Api/index.php' \ -H 'Authorization: Bearer SEU_TOKEN' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'websiteId=SEU_WEBSITE_ID&module=pages&method=listBlockLines&blockinwebsiteId=10&includeHtml=1&includeTemplate=1&page=1&pageSize=50'
fieldId vs fieldName
- Use
fieldId(ex.:field-0) para atualizar valores — é o identificador estável. Cadavaluetem teto de 16KB (422 FIELD_VALUE_TOO_LARGE). fieldNamesó funciona se for único e não vazio no schema.- Nomear/renomear campos do schema continua no painel (não há método de API para isso).
Exemplo de updateBlockLine:
curl -X POST 'https://app.interago.com.br/App/Api/index.php' \ -H 'Authorization: Bearer SEU_TOKEN' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'websiteId=SEU_WEBSITE_ID&module=pages&method=updateBlockLine&blockinwebsiteId=10&lineId=line-exemplo&fields=%5B%7B%22fieldId%22%3A%22field-0%22%2C%22value%22%3A%22Novo%20t%C3%ADtulo%22%7D%5D'
Criar, remover e reordenar
curl -X POST 'https://app.interago.com.br/App/Api/index.php' \ -H 'Authorization: Bearer SEU_TOKEN' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'websiteId=SEU_WEBSITE_ID&module=pages&method=createBlockLine&blockinwebsiteId=10&count=1&position=end'
curl -X POST 'https://app.interago.com.br/App/Api/index.php' \ -H 'Authorization: Bearer SEU_TOKEN' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'websiteId=SEU_WEBSITE_ID&module=pages&method=deleteBlockLine&blockinwebsiteId=10&lineId=line-exemplo'
curl -X POST 'https://app.interago.com.br/App/Api/index.php' \ -H 'Authorization: Bearer SEU_TOKEN' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'websiteId=SEU_WEBSITE_ID&module=pages&method=reorderBlockLines&blockinwebsiteId=10&lineIds=%5B%22line-b%22%2C%22line-a%22%5D'
Publicação no site
Salvar o bloco pela API não republica páginas. Depois de alterar template ou linhas, faça build/publish das páginas que usam o bloco (painel ou fluxo habitual do site).
Ver também
API: Módulo Páginas e Blocos (pages) — páginas, blocos gerais, rascunhos e content/operations.
Este artigo foi útil?