API Documentation

Complete reference for the NerdVoid REST API. Base URL: https://api.nerdvoid.com/v1

Quickstart

Get started with NerdVoid in under 5 minutes. No signup required for basic testing.

1. Create a webhook endpoint
curl -X POST https://api.nerdvoid.com/v1/hooks \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "my_webhook",
    "description": "Test webhook for my app"
  }'

Response:
{
  "id": "wh_9k2j8h3g7f6d5s",
  "url": "https://api.nerdvoid.com/hook/9k2j8h3g7f6d5s",
  "name": "my_webhook",
  "created_at": "2026-03-19T21:15:32Z"
}
2. Send a test request
curl -X POST https://api.nerdvoid.com/hook/9k2j8h3g7f6d5s \
  -H "Content-Type: application/json" \
  -d '{"event": "test", "data": {"user_id": 123}}'

Response:
{
  "received": true,
  "request_id": "req_abc123xyz"
}
3. View captured request
curl https://api.nerdvoid.com/v1/hooks/9k2j8h3g7f6d5s/requests \
  -H "Authorization: Bearer YOUR_API_KEY"

Authentication

All API requests require authentication via API key. Get your key from the dashboard.

curl https://api.nerdvoid.com/v1/hooks \
  -H "Authorization: Bearer nvapi_sk_live_9k2j8h3g7f6d5s4a3s2d1f0g9h8j7k6l5m4n3b2v1c0x"
⚠️
Keep your API key secure
Never commit API keys to version control or expose them in client-side code.

Example API Keys

For testing purposes, you can use these example keys:

Production
nvapi_sk_live_9k2j8h3g7f6d5s4a3s2d1f0g9h8j7k6l5m4n3b2v1c0x
Test
nvapi_sk_test_7k6l5m4n3b2v1c0x9k2j8h3g7f6d5s4a3s2d1f0g9h8j
Publishable (client-side safe)
nvapi_pk_live_5m4n3b2v1c0x9k2j8h3g7f6d5s4a

Create Webhook

POST /v1/hooks

Creates a new webhook endpoint and returns a unique URL.

Request Body

{
  "name": "string",           // Required
  "description": "string",    // Optional
  "response_code": 200,       // Optional (Pro)
  "response_body": {},        // Optional (Pro)
  "hmac_secret": "string"     // Optional (Pro)
}

Response

{
  "id": "wh_9k2j8h3g7f6d5s",
  "url": "https://api.nerdvoid.com/hook/9k2j8h3g7f6d5s",
  "name": "my_webhook",
  "description": "Test webhook",
  "created_at": "2026-03-19T21:15:32Z",
  "request_count": 0
}

Get Requests

GET /v1/hooks/:hook_id/requests

Retrieve all requests sent to a specific webhook.

Query Parameters

  • limit - Number of requests to return (default: 50, max: 100)
  • offset - Pagination offset
  • method - Filter by HTTP method (GET, POST, etc.)
  • status - Filter by response status code

Example Response

{
  "requests": [
    {
      "id": "req_abc123xyz",
      "timestamp": "2026-03-19T21:16:45.823Z",
      "method": "POST",
      "headers": {
        "content-type": "application/json",
        "user-agent": "stripe/webhook"
      },
      "body": {
        "event": "payment.succeeded",
        "amount": 2999
      },
      "query_params": {},
      "ip_address": "54.187.174.169",
      "response_time_ms": 12
    }
  ],
  "total": 342,
  "has_more": true
}

Stripe Integration

NerdVoid is perfect for testing Stripe webhooks during development.

Add your NerdVoid webhook URL to Stripe Dashboard:
1. Go to Developers → Webhooks in Stripe Dashboard
2. Click "Add endpoint"
3. Paste your NerdVoid URL: https://api.nerdvoid.com/hook/YOUR_HOOK_ID
4. Select events to listen for
5. Test with Stripe CLI:

stripe trigger payment_intent.succeeded \
  --webhook-url https://api.nerdvoid.com/hook/YOUR_HOOK_ID

Official SDKs

Node.js

npm install @nerdvoid/sdk

import NerdVoid from '@nerdvoid/sdk';
const client = new NerdVoid({
  apiKey: process.env.NERDVOID_KEY
});

Python

pip install nerdvoid

import nerdvoid
client = nerdvoid.Client(
  api_key=os.environ['NERDVOID_KEY']
)