Documentation

Everything your team needs to integrate Kix6 — quickstarts, API reference, SDKs, and best practices.

Quickstart

Run a placement test in three minutes. This example uses the REST API — you can also use our SDKs.

1. Create an API key

Sign in to the dashboard, create an organization API key, and keep it secret.

2. Trigger a test

Copy
curl -X POST "https://api.kix6.com/v2/tests" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "domain": "example.com",
    "template": "welcome",
    "seeds": ["gmail","outlook","yahoo"]
  }'
            

3. Retrieve results

Copy
curl "https://api.kix6.com/v2/tests/{test_id}" \
  -H "Authorization: Bearer YOUR_API_KEY"
            

Sample response:

Copy
{
  "id": "abc123",
  "status": "completed",
  "metrics": {
    "inbox_rate": 0.92,
    "spam_rate": 0.02
  }
}
            
Back to top

API Reference

Endpoints are RESTful and return JSON. Responses include HTTP status codes and error bodies with code and message fields.

Create test — POST /v2/tests

Copy
POST /v2/tests
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY

{
  "domain": "example.com",
  "template": "welcome",
  "seeds": ["gmail","outlook"]
}
            

Request parameters

  • domain — sending domain (required)
  • template — template name or ID (required)
  • seeds — array of provider slugs (optional)

Errors

Copy
HTTP/1.1 400 Bad Request
{
  "code": "invalid_request",
  "message": "Missing domain parameter"
}
            
Back to top

Webhooks

Subscribe to test.completed and auth.changed events. Deliveries are retried on transient failures.

Copy
POST /webhooks/kix6
Content-Type: application/json

{
  "event": "test.completed",
  "data": { "test_id": "abc123", "status": "completed" }
}
            

Secure webhooks by validating the signature header X-Kix6-Signature using your webhook secret.

Back to top

SDKs & Samples

Official SDKs for Node, Python, and Go — quick install and example below.

Node.js (npm)

Copy
# install
npm install @kix6/sdk

// example
const Kix6 = require('@kix6/sdk');
const client = new Kix6(process.env.KIX6_API_KEY);
const test = await client.tests.create({ domain: 'example.com', template: 'welcome' });
            

Python (pip)

Copy
# install
pip install kix6

# example
from kix6 import Client
c = Client(api_key='YOUR_API_KEY')
t = c.tests.create(domain='example.com', template='welcome')
            
Back to top

Best practices

  1. Rotate API keys regularly and scope them per-environment.
  2. Use webhooks to process results asynchronously.
  3. Keep seed lists up-to-date for regional coverage.
Back to top

Changelog

  • 2025-09-01 — Added DKIM health checks and improved webhook delivery guarantees.
  • 2025-06-12 — New API: POST /v2/tests with seed targeting.
Back to top