Quick Start

Get your API credentials and submit payroll data in under 5 minutes.

Before you begin

You need an active Audit1 account, provisioned by your insurance carrier or Audit1 account manager. Access is by invitation only — contact support@audit1.com if you don't have one.


Step 1: Get Your API Key #

  1. Log into your portal:
  2. Employers: employer.audit1.info
  3. Payroll Companies: provider.audit1.com
  4. Go to Settings > Connections > Set Up Connection > API Keys
  5. Choose New API v2.0 > Generate API Credentials
  6. Copy and save your Client ID and Client Secret

Save your secret immediately

— it's only shown once. If you lose it, generate a new key.

Your keys look like this:

Environment Client ID Client Secret
Sandbox audit1_test_cli_1a2b3c4d... audit1_test_sec_5e6f7g8h...
Production audit1_live_cli_9i0j1k2l... audit1_live_sec_3m4n5o6p...

Step 2: Submit a Payroll Report #

curl -X POST https://apiv2.audit1.com/api/v2/payroll/reports \
  -H "X-Client-ID: audit1_test_cli_your_id_here" \
  -H "X-Client-Secret: audit1_test_sec_your_secret_here" \
  -H "Content-Type: application/json" \
  -d '{
    "employer_fein": "12-3456789",
    "policy_number": "WC1025561",
    "employees": [
      {
        "first_name": "Jane",
        "last_name": "Smith",
        "class_code": "8810",
        "state": "CA",
        "gross_wages": 2500.00,
        "hours_worked": 80
      }
    ],
    "pay_period": {
      "start_date": "2024-01-01",
      "end_date": "2024-01-15"
    }
  }'

Response (202 Accepted)

{
  "success": true,
  "file_id": "682abc123def456789012345",
  "status": "completed",
  "environment": "sandbox",
  "employer": {
    "id": "681xyz789abc123456789012",
    "business_name": "Smith Industries LLC",
    "fein": "12-3456789"
  },
  "policy": {
    "id": "680def456ghi789012345678",
    "policy_number": "WC1025561"
  },
  "employee_count": 1,
  "file_name": "Smith-Industries-LLC_2024-01-01_2024-01-15_WC1025561_2024-01-15T12-00-00-000Z.csv"
}

Step 3: Check Processing Status #

curl -X GET https://apiv2.audit1.com/api/v2/files/status/682abc123def456789012345 \
  -H "X-Client-ID: audit1_test_cli_your_id_here" \
  -H "X-Client-Secret: audit1_test_sec_your_secret_here"

File statuses progress through: pendinguploadedidentifiednormalizedvalidatedcompleted


That's it! Your payroll data is being processed.

Next Steps #

Guide What you'll learn
Authentication Key management, scopes, environments, HMAC signing
API Reference All endpoints with full request/response specs — including POST /employees/sync for roster updates
Webhooks Push data or receive event notifications
SFTP File-based alternative to the API
Connectors Pre-built integrations for Paylocity, UKG, and more
AI Agent Protocol (MCP) Enable AI agents to report payroll via JSON-RPC
Payment API Payment Links, ACH, bank accounts — requires a payments-scoped key