Getting Started

InputBuffer collects feedback from your users and uses AI to route it into named buffers — so the right people see the right feedback automatically. This guide walks you from zero to your first piece of feedback in the dashboard.

  1. 1

    Prerequisites

    A terminal with curl, or a project using JavaScript or Python. No other setup required.

  2. 2

    Create an account

    Sign up at inputbuffer.io. Confirm your email address when prompted — the confirmation link is required before you can create an organization.

    You should receive the confirmation email within a minute or two. If it doesn't arrive, check your spam folder or use the resend option on the confirmation page.

  3. 3

    Create an organization

    After confirming your email, you'll be prompted to create an organization. Pick a short slug (e.g. acme or my-app) — this identifies your org in the dashboard URL and in API requests.

    You'll land on your organization's dashboard once it's created.

    One account can belong to multiple organizations. If you're building multiple products, give each its own org.

  4. 4

    Get an API token

    Navigate to Settings → API Tokens inside your organization and click Create token.

    Give the token a descriptive name (e.g. backend-production or my-app-server). Copy the token when it appears — it's shown only once. The token is a single string in the format clientId_secret; use the full value as shown. Store it in an environment variable, not in source code.

    Never expose this token in client-side code. Anyone with it can write inputs to your organization. For browser-based feedback, use a widget token instead.

  5. 5

    Submit your first input

    Make a POST to /api/v0/inputs with your token in the Authorization header and the org slug from step 2 in X-Organization-Slug.

    Input content is sent to third-party AI services for classification and search. InputBuffer does not yet scrub content before processing — avoid submitting personal information, credentials, or production secrets.

    curl -X POST https://inputbuffer.io/api/v0/inputs \
      -H "Authorization: Bearer YOUR_TOKEN" \
      -H "Content-Type: application/json" \
      -H "X-Organization-Slug: YOUR_ORG_SLUG" \
      -d '{
        "title": "Login button crashes on Safari",
        "description": "Reproducible on iOS 17 Safari. Tapping the login button causes a white screen. No console errors visible."
      }'
    const response = await fetch('https://inputbuffer.io/api/v0/inputs', {
      method: 'POST',
      headers: {
        'Authorization': 'Bearer YOUR_TOKEN',
        'Content-Type': 'application/json',
        'X-Organization-Slug': 'YOUR_ORG_SLUG',
      },
      body: JSON.stringify({
        title: 'Login button crashes on Safari',
        description: 'Reproducible on iOS 17 Safari. Tapping the login button causes a white screen. No console errors visible.',
      }),
    });
    
    const { id } = await response.json();
    console.log('Created input:', id);
    import requests
    
    response = requests.post(
        'https://inputbuffer.io/api/v0/inputs',
        headers={
            'Authorization': 'Bearer YOUR_TOKEN',
            'Content-Type': 'application/json',
            'X-Organization-Slug': 'YOUR_ORG_SLUG',
        },
        json={
            'title': 'Login button crashes on Safari',
            'description': 'Reproducible on iOS 17 Safari. Tapping the login button causes a white screen. No console errors visible.',
        }
    )
    
    data = response.json()
    print('Created input:', data['id'])

    A successful response returns the new input's ID:

    { "id": "abc123" }

    If something goes wrong:

    • 401 — check that your token value includes both parts separated by _ (the full value shown when you created it), and that you haven't added extra whitespace.
    • 403 — verify the X-Organization-Slug header exactly matches your org slug from step 2.
    • 400 — check that both title and description are present in the request body.
  6. 6

    View it in your dashboard

    Open your organization in the InputBuffer dashboard and navigate to Inputs. Your new input will appear there, usually within a second or two. You should see it listed with the title "Login button crashes on Safari" and a status of unclassified or a buffer name.

    If it doesn't appear after 5 seconds, refresh the page. If it's still missing, check that the API call returned a 200 with an id in the response body.

Next steps

  • Set up your buffers — create named groups so the AI can start routing your feedback automatically
  • Feedback Widget — add the feedback widget to your web app or docs site (no server required)
  • API Reference — full reference for all API endpoints, parameters, and response schemas