Quick Start Guide

Get up and running with ViaHuman in under 5 minutes.

Prerequisites

  • A ViaHuman account (Sign up here if you don't have one)
  • A workflow or automation tool (e.g., n8n, Make, custom script)

Step 1: Create an API Key

  1. Log in to your dashboard
  2. Navigate to API Keys
  3. Click Create New API Key
  4. Give it a name (e.g., "My n8n Workflow")
  5. Copy the API key - you won't be able to see it again!

Your API key will look like: vh_live_abcd1234567890abcdef1234567890ab

Step 2: Download the Mobile App

Download the ViaHuman mobile app to receive approval notifications:

Log in with the same credentials you used for the web dashboard.

Step 3: Make Your First API Call

Here's a simple example using cURL:

curl -X POST https://api.viahuman.xyz/v1/approvals \
  -H "Authorization: Bearer vh_live_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Review AI Email",
    "description": "Please review this email before sending",
    "actions": ["approve", "reject", "edit"],
    "input_type": "text",
    "input_config": {
      "placeholder": "Edit the email...",
      "multiline": true,
      "default_value": "Hello, thank you for reaching out..."
    }
  }'

Step 4: Check Your Phone

You should receive a push notification on your mobile device within seconds. Open the notification to review and respond to the approval request.

Step 5: Get the Response

Poll the approval status to get the user's response:

curl -X GET https://api.viahuman.xyz/v1/approvals/{approval_id} \
  -H "Authorization: Bearer vh_live_your_api_key_here"

Response when approved:

{
  "id": "uuid",
  "status": "approved",
  "response_action": "approve",
  "response_input": "Hello, thank you for reaching out...",
  "responded_at": "2024-12-15T10:30:00Z"
}

Next Steps

Common Use Cases

AI Email Review

const approval = await createApproval({
  title: "Review AI Email",
  input_type: "text",
  input_config: {
    default_value: aiGeneratedEmail,
    multiline: true
  }
});

Budget Approval

const approval = await createApproval({
  title: "Approve Budget Request",
  input_type: "number",
  input_config: {
    label: "Amount (USD)",
    min: 0,
    max: 10000,
    currency: "USD"
  }
});

Deployment Gate

const approval = await createApproval({
  title: "Choose Deployment Environment",
  input_type: "select",
  input_config: {
    options: [
      { value: "staging", label: "Staging" },
      { value: "production", label: "Production" }
    ]
  }
});

Need help? Join our Discord!