Documentation
v1.0

Build with Hypero.

Everything you need to design, deploy, and operate intelligent workflows in production.

Introduction

Hypero is a visual builder for AI workflows. You compose triggers, agents, integrations, and logic on a single canvas, and Hypero turns it into a production-ready service with an authenticated API endpoint, observability, and version control.

This guide assumes you have a Hypero account and a workspace. If you don't, sign up at hypero.dev — the free tier is enough to follow along.

Quickstart

Install the CLI to scaffold a project and connect it to your workspace.

bashcopy
# Install the Hypero CLI
npm install -g @hypero/cli

# Authenticate
hyp login

# Create a workflow from a template
hyp new lead-router --template starter

# Deploy
cd lead-router && hyp deploy

After hyp deploy, your workflow is live at https://api.hypero.dev/v1/workflows/lead-router/run.

Core concepts

Three primitives power Hypero: workflows, nodes, and agents.

  • Workflow — a versioned graph of nodes. Each workflow is callable as an API endpoint and observable via the run inspector.
  • Node — a single step. Triggers, HTTP calls, database queries, conditions, loops, and agent calls are all nodes.
  • Agent — a special node that reasons, selects tools, and produces structured outputs. Agents have memory, guardrails, and a configurable model backend.

Authentication

Hypero uses bearer tokens. Each workspace exposes one or more API keys with scopes. Generate keys from Settings → API keys.

bashcopy
curl https://api.hypero.dev/v1/whoami \
  -H "Authorization: Bearer $HYPERO_API_KEY"

All endpoints expect Authorization: Bearer … unless explicitly marked public. Webhook signatures are validated separately via the X-Hypero-Signature header.

Creating workflows

Workflows can be authored visually in the canvas or declaratively in YAML. The two are isomorphic — every change in one updates the other.

yamlcopy
name: lead-router
trigger:
  type: webhook
  path: /lead

steps:
  - id: classify
    type: agent
    agent: support-triage
    input: ${trigger.body}

  - id: branch
    type: condition
    when: ${classify.priority == "high"}
    then: notify
    else: archive

  - id: notify
    type: slack
    channel: "#sales"
    text: "🚨 New high-priority lead from ${trigger.body.email}"

You can deploy this workflow with hyp deploy and call it immediately at the path defined in trigger.

AI agent setup

Define an agent with a role, a model, the tools it can use, and optional memory. Agents can be referenced by any node in any workflow inside the workspace.

yamlcopy
name: support-triage
model: anthropic/claude-opus
role: |
  You are a senior support engineer.
  Classify tickets, draft replies, and escalate
  when you are not confident.

tools:
  - search_kb
  - create_ticket
  - send_email

memory:
  scope: per_user
  ttl: 180d

guardrails:
  max_tokens: 8000
  max_cost_per_run_usd: 0.25

Agents emit structured reasoning traces by default. Open any run in the inspector to see the plan, tool calls, and final output side-by-side.

API reference

Every workflow you deploy is exposed as a typed REST endpoint. Below are the core endpoints supported across all workspaces.

MethodPathDescription
POST/v1/workflows/:name/runExecute a workflow synchronously
POST/v1/workflows/:name/runsQueue an asynchronous run
GET/v1/runs/:idFetch run status, output, and trace
GET/v1/agents/:nameInspect an agent's config
GET/v1/integrationsList available connectors
bashcopy
curl https://api.hypero.dev/v1/workflows/lead-router/run \
  -H "Authorization: Bearer $HYPERO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "email": "ada@hypero.dev" }'

Webhooks

Hypero sends webhooks for run lifecycle events. You can use these to keep external systems in sync, or to trigger downstream workflows.

  • run.started — a workflow run has begun.
  • run.succeeded — a run completed without errors.
  • run.failed — a run finished with an error.
  • run.paused — a run is waiting for a human approval step.

Verify webhooks with the X-Hypero-Signatureheader, which contains an HMAC-SHA256 of the raw body using your endpoint's signing secret.

tscopy
import crypto from "node:crypto";

export function verify(rawBody: string, header: string, secret: string) {
  const expected = crypto
    .createHmac("sha256", secret)
    .update(rawBody)
    .digest("hex");
  return crypto.timingSafeEqual(
    Buffer.from(expected),
    Buffer.from(header)
  );
}
Need help? Reach the team in your workspace settings.Upgrade plan →