Pular para o conteúdo
GET/regras-comentario

Listar regras de comentário

automacoes:lermódulo Automaçõespaginada

Regras que respondem comentários do Instagram, paginado por cursor. Filtre por conta, publicação, estado ou tipo (comum ou seguir). Regras seguir trazem o bloco seguir completo e estatisticas.

GET /regras-comentario

curl "https://chat.forsi.com.br/api/v1/regras-comentario?conexao_id=54b27747-86c2-455a-91a4-c0c02d0bd891&ativo=true" \
  -H "Authorization: Bearer $FORSI_CHAVE"
Resposta 200
{
  "dados": [
    {
      "id": "cc23f373-2c83-42d6-83a7-c4e00ac10c39",
      "nome": "Maria Souza",
      "ativo": true,
      "conexao_id": "11908b04-f817-4068-afa6-896d3e1b7265",
      "post_id": "texto",
      "palavras": ["texto"],
      "modo": "contem",
      "qualquer_comentario": false,
      "automacao_id": "b6b1fba7-e2a3-4922-a365-70584a78e091",
      "automacao": "texto",
      "responder_publico": "texto",
      "resposta_privada": "texto",
      "respostas_publicas": ["texto"],
      "ocultar_apos": false,
      "botoes": ["texto"],
      "botoes_detalhe": [
        {
          "titulo": "Consulta de retorno",
          "url": "https://seu-sistema.com.br/webhooks/forsi"
        }
      ],
      "tipo": "comum",
      "seguir": {
        "botao_receber": "texto",
        "texto_nao_segue": "texto",
        "botao_estou_seguindo": "texto",
        "texto_ainda_nao_segue": "texto",
        "texto_ja_segue": "texto",
        "texto_seguiu_depois": "texto",
        "conteudo": {
          "texto": "Oi, queria remarcar minha consulta",
          "botao": {
            "titulo": "Consulta de retorno",
            "url": "https://seu-sistema.com.br/webhooks/forsi"
          }
        },
        "max_tentativas": 12,
        "texto_limite": "texto",
        "se_nao_verificar": "enviar"
      },
      "estatisticas": {
        "pediram": 12,
        "entregues": 42,
        "ja_seguiam": 12,
        "seguiram_depois": 12,
        "aguardando": 12
      },
      "atualizado_em": "2026-10-04T13:05:12.481Z",
      "execucoes_7d": 12,
      "ultima_em": "2026-10-04T13:05:12.481Z"
    }
  ],
  "proximo": "1791205512481_3791c08d-72dd-4002-89ff-1e14a11c07e5"
}

Parâmetros de consulta#

  • conexao_iduuidopcional

    Só as regras desta conta do Instagram.

  • post_idstringopcional

    Só as regras desta publicação.

  • ativo"true" | "false"opcional

    true ou false.

  • tipo"comum" | "seguir"opcional

    Só as regras deste tipo: comum ou seguir.

  • limiteintegeropcional

    Itens por página (1 a 100, padrão 50).

  • cursorstringopcional

    O valor de proximo da página anterior.

    • até 80 caracteres

Resposta#

200 com {"dados": ...}: uma lista de RegraComentario, paginada por cursor (como paginar).

  • iduuidopcional
    —
  • nomestringopcional
    —
  • ativobooleanopcional
    —
  • conexao_iduuidopcional
    —
  • post_idstring ou nullopcional
    —
  • palavraslista de stringopcional
    —
  • modo"contem" | "igual"opcional
    —
  • qualquer_comentariobooleanopcional
    —
  • automacao_iduuid ou nullopcional
    —
  • automacaostring ou nullopcional

    Nome da automação.

  • responder_publicostring ou nullopcional
    —
  • resposta_privadastring ou nullopcional
    —
  • respostas_publicaslista de stringopcional
    —
  • ocultar_aposbooleanopcional
    —
  • botoeslista de stringopcional
    —
  • botoes_detalhelista de objectopcional

    Os mesmos botões com o link: url não aparece no botão que só devolve o toque.

  • botoes_detalhe[].titulostringopcional
    —
  • botoes_detalhe[].urlstringopcional
    —
  • tipo"comum" | "seguir"opcional

    comum ou seguir ("Seguir para receber"). Regras antigas são comum.

  • seguirobject ou nullopcional

    Só no tipo seguir: completo, com os padrões aplicados. Não aparece no tipo comum; dentro dele, conteudo.botao, max_tentativas e texto_limite também não aparecem enquanto forem null.

  • seguir.botao_receberstringopcional

    Botão da mensagem do comentário (1 a 20). Padrão: "Quero receber".

  • seguir.texto_nao_seguestringopcional

    Para quem ainda não segue (1 a 640).

  • seguir.botao_estou_seguindostringopcional

    Botão para avisar que passou a seguir (1 a 20). Padrão: "Estou seguindo".

  • seguir.texto_ainda_nao_seguestringopcional

    Quando toca em "Estou seguindo" e ainda não segue (1 a 640).

  • seguir.texto_ja_seguestringopcional

    Antes do conteúdo, para quem já seguia (0 a 640; "" = não envia).

  • seguir.texto_seguiu_depoisstringopcional

    Antes do conteúdo, para quem acabou de seguir (0 a 640; "" = não envia).

  • seguir.conteudoobjectopcional

    O que é entregue.

  • seguir.max_tentativasinteger ou nullopcional

    null = confere até seguir (no máximo 50 vezes).

    • mín. 1
  • seguir.texto_limitestring ou nullopcional

    Enviada uma vez quando as tentativas acabam (1 a 640).

  • seguir.se_nao_verificar"enviar" | "pedir_de_novo"opcional

    Quando a Meta não deixa conferir. Padrão: enviar.

  • estatisticasobject ou nullopcional

    Só no tipo seguir. Contagem desde que a regra existe.

  • estatisticas.pediramintegeropcional

    Pessoas que receberam o botão.

  • estatisticas.entreguesintegeropcional

    Pessoas que receberam o conteúdo.

  • estatisticas.ja_seguiamintegeropcional

    Já seguiam ao pedir.

  • estatisticas.seguiram_depoisintegeropcional

    Passaram a seguir depois de pedir.

  • estatisticas.aguardandointegeropcional

    Ainda esperando tocar ou seguir.

  • atualizado_emdata e hora ISO 8601opcional
    —
  • execucoes_7dintegeropcional

    Disparos nos últimos 7 dias.

  • ultima_emdata e hora ISO 8601 ou nullopcional
    —

Erros#

Todo erro vem como {"erro": {"codigo", "mensagem"}}. Trate pelo codigo: ele não muda.

Status de erro desta operação
StatusQuando
401Chave ausente ou inválida (resposta igual para qualquer motivo).
403Plano sem API, escopo insuficiente ou https/origem recusados.
422Dados inválidos ou regra de negócio (ex.: janela_fechada; conta_restrita = a Meta restringiu a conta por spam: erro traz os campos de RestricaoMeta, como ate, escopo, motivo e retry_after_s).
429Limite de requisições. Veja Retry-After.
Códigos de erro que esta área pode devolver19
  • regra_inexistenteRegra de comentário não encontrada (veja GET /regras-comentario).
  • regra_conexao_invalidaconexao_id precisa ser uma conta do Instagram conectada por login (veja GET /instagram/contas).
  • regra_sem_palavrasInforme de 1 a 30 palavras, ou use qualquer_comentario: true.
  • regra_modo_invalidomodo deve ser contem ou igual.
  • regra_sem_acaoA regra precisa de uma resposta pública ou de uma resposta privada.
  • regra_texto_longoTexto longo demais: resposta pública até 2200 caracteres e resposta privada até 1000.
  • regra_variantes_demaisNo máximo 5 respostas_publicas.
  • regra_extra_sem_publicorespostas_publicas e ocultar_apos só valem com responder_publico preenchido.
  • regra_automacao_invalidaautomacao_id não é uma automação desta organização (veja GET /automacoes?gatilho=comentario).
  • regra_automacao_sem_privadaPara ligar uma automação, preencha resposta_privada.
  • regra_botao_longoCada botão tem no máximo 20 caracteres.
  • regra_botao_repetidoBotões repetidos. Cada botão deve ser diferente.
  • regra_botao_url_invalidaA url do botão deve ser um link https:// válido, com até 2000 caracteres.
  • regra_botoes_demaisNo máximo 3 botões.
  • regra_botoes_invalidosbotoes deve ser uma lista de textos ou de objetos { titulo, url }.
  • regra_botoes_sem_privadaPara ter botões, preencha resposta_privada.
  • recurso_desligadoEste recurso não está liberado para a sua organização.
  • seguir_invalidoAlgum campo de `seguir` é inválido. A mensagem diz qual: textos de 1 a 640 caracteres (os de "já segue" e "seguiu depois" podem ser vazios), botões de 1 a 20 e sem `{` (botão não troca variáveis), cada texto até 900 bytes (emoji e acento contam mais), sem caractere de controle ou invisível, `max_tentativas` de 1 a 50 e link do conteúdo em https.
  • limite_de_regrasLimite de 200 regras de comentário por organização. Apague alguma para criar outra.

Os erros que valem para qualquer rota (chave, limite, JSON) estão em Erros.