Pular para o conteúdo

O que é o Restorm?

O Restorm é uma aplicação para computador (Windows, macOS, Linux) que reúne num único projeto tudo o que se faz em torno de uma API: chamá-la, simulá-la, encadear chamadas, versionar o conjunto e executá-lo em CI.

Onde a maioria dos clientes de API se fica pelo HTTP e pelo GraphQL, o Restorm trata quinze protocolos como cidadãos de primeira classe, cada um com o seu editor dedicado e a sua apresentação de resposta adaptada:

HTTP · GraphQL · gRPC · SOAP · WebSocket · Socket.IO · MQTT · SSE · STOMP · OData · JSON-RPC (unitário e por lote) · tRPC · Redis · AMQP / RabbitMQ · Kafka.

Na prática: o mesmo projeto pode conter a chamada REST que cria uma encomenda, a subscrição MQTT que recebe a confirmação e o pedido Kafka que verifica que o evento foi efetivamente publicado. Consulte o catálogo de protocolos.

A árvore lateral de um projeto que mistura, numa mesma pasta, pedidos GraphQL, WebSocket, SSE, Redis, Kafka, AMQP, STOMP, gRPC, SOAP, OData, tRPC, JSON-RPC, MQTT e Socket.IO, ao lado das pastas de operações HTTP

O Restorm também sabe alojar um serviço em vez de o chamar. Cria um servidor — é um elemento de pleno direito da árvore, adicionado a partir de Adicionar ▸ Servidor HTTP (ou GraphQL, gRPC, SOAP, WebSocket, Socket.IO, MQTT, OData) —, dá-lhe uma rota e uma resposta, e o Restorm passa a escutar em localhost. Sem serviço externo, sem ida e volta pela rede, e as {{variables}} são resolvidas no momento de servir.

Consulte Modo servidor.

Um cenário é um grafo: caixas (chamar um pedido, testar uma condição, repetir em ciclo, transformar um dado, executar código) unidas por ligações que transportam os valores. É isto que substitui os scripts pré/pós-pedido das outras ferramentas, mantendo-se legível.

Estão disponíveis noventa tipos de caixas, do simples If à ligação Kafka, passando pela validação de esquema JSON. Consulte Cenários.

Um cenário com um nó de pedido HTTP, uma asserção sobre o código de estado, uma extração e um nó If

Um projeto Restorm é um ficheiro .restorm (YAML por predefinição) ou uma árvore de pastas no seu disco. Nada é armazenado do nosso lado. A serialização é determinista — ordem de chaves canónica, identificadores derivados de forma estável — para que uma gravação sem modificações não produza qualquer diff e para que uma revisão de código num projeto de API seja aproveitável.

O Restorm integra além disso um cliente git que compreende o formato: uma mensagem de commit gerada por entidade e uma resolução de conflitos que mostra as duas versões no seu verdadeiro editor.

Duas superfícies de automatização:

  • a linha de comandos: restorm --open projet.restorm --run "Tests de fumée" --headless executa um cenário sem janela, escreve o registo na saída standard e devolve um código de saída aproveitável em CI. Consulte Execução headless e CI;
  • o servidor MCP integrado: um agente de IA (Claude Code, Cursor…) pode ler a árvore do projeto, criar pedidos, executá-los e controlar a interface. Consulte Controlar o Restorm por MCP.

O Restorm integra uma firewall aplicacional: qualquer chamada de saída que não venha de um URL presente no seu projeto é bloqueada por predefinição e é-lhe pedido que a autorize. Uma dependência que quisesse telefonar para casa não o faz sem que o saiba. Consulte Firewall.

O Restorm pode ser utilizado gratuitamente, sem limite de pedidos nem de projetos, e todos os protocolos de execução estão incluídos na edição Community. As edições Pro e Enterprise desbloqueiam capacidades (execução headless em CI, git integrado, ferramentas MCP avançadas, SSO…) — nunca quotas. Consulte Planos e capacidades.