Bukka MailDeveloper DocsOpen Console

Bukka Mail API Reference

Build email products that feel fast, trusted, and intelligent.

Send transactional mail, run campaigns, verify domains, automate warmup, add human-approved AI workflows, and collect legally binding e-signatures from one polished API surface.

99.9%Delivery infrastructure uptime
14AI actions for inbox and campaigns
500KBusiness email volume per month
01

Secure access

Authentication

All API requests use bearer authentication. Create and rotate keys from the Bukka Mail console, then include the token in every request.

Base URL and header
Base URL: https://mail.bukka.ai/api

Authorization: Bearer bk_live_your_api_key_here
Content-Type: application/json
Production guidance

Store API keys on your server, rotate them regularly, and create separate keys for development, staging, and production.

02

Core endpoint

Send Email

Use the send endpoint for receipts, notifications, onboarding messages, alerts, password resets, and any transactional email flow.

POST/api/send

Send a transactional email with text, HTML, attachments, and tracking options.

JavaScript
const response = await fetch('https://mail.bukka.ai/api/send', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer bk_live_your_api_key_here',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    from: 'hello@yourdomain.com',
    to: 'customer@example.com',
    subject: 'Welcome aboard',
    html: '<p>Your account is ready.</p>'
  })
});

const result = await response.json();
cURL
curl -X POST https://mail.bukka.ai/api/send \
  -H "Authorization: Bearer bk_live_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "hello@yourdomain.com",
    "to": "customer@example.com",
    "subject": "Welcome aboard",
    "text": "Your account is ready."
  }'
03

Marketing workflows

Campaigns

Create, preview, schedule, and report on audience campaigns while keeping deliverability controls in the same workspace.

GET/api/campaigns

List campaigns and their delivery status.

POST/api/campaigns

Create a campaign with audience, template, and schedule.

GET/api/campaigns/:id

Read campaign details, content, and metrics.

POST/api/campaigns/:id/send

Send or schedule a ready campaign.

DELETE/api/campaigns/:id

Archive or remove a campaign.

04

Trust layer

Domains and Warmup

Register sending domains, validate DNS records, watch reputation signals, and warm new inboxes before scaling traffic.

GET/api/domains

List verified domains and setup status.

POST/api/domains

Add a sending domain for verification.

POST/api/domains/:id/verify

Refresh SPF, DKIM, and DMARC checks.

DELETE/api/domains/:id

Remove a domain from the workspace.

POST/api/warmup/start

Start a warmup plan for a domain or mailbox.

GET/api/warmup/:id

Track warmup health, volume, and reputation.

05

Human-approved AI

AI Features

Add the same AI actions used in Bukka Mail to your own email experience: compose, refine, summarize, translate, detect risk, and prioritize work.

composereplysummarizetranslatephishingcategorizeextract-tasksprioritysubjectnegotiatetoneformalizefriendliertwin
AI action request
POST /api/ai/reply

{
  "message": "Can we move the meeting to Friday?",
  "tone": "professional",
  "context": "Customer success follow-up"
}
06

Event automation

Webhooks

Subscribe to delivery and workspace events so your CRM, product database, or analytics stack stays in sync.

email.sentemail.deliveredemail.openedemail.clickedemail.bouncedemail.complainedwarmup.progressdomain.verified
07

Performance data

Analytics

Read reporting data for delivery, campaigns, domains, warmup, and AI usage without exporting spreadsheets manually.

GET/api/analytics/overview

Workspace-wide delivery, engagement, and AI usage.

GET/api/analytics/campaigns/:id

Campaign performance by recipient, link, and segment.

GET/api/analytics/domains/:id

Domain reputation, DNS health, and bounce trends.

GET/api/analytics/warmup/:id

Warmup progress and recommended next volume.

08

Plan limits

Rate Limits

Limits are designed to protect sender reputation and keep the platform stable. Enterprise customers can request custom throughput.

PlanAPI requestsAI actionsEmail volume
Free100 / min10 / day1K / month
Pro1,000 / minUnlimited50K / month
Business5,000 / minUnlimited500K / month
EnterpriseCustomUnlimitedUnlimited
09

Electronic signatures

BukkaSign eSign API

Legally binding electronic signatures with Canadian data residency. Upload PDFs, place signature fields, send for signing, track completion, and download certified documents — all via API.

Base URL

All BukkaSign endpoints are served from https://sign.bukka.ai/api. Authentication uses JWT Bearer tokens obtained from the login endpoint.

Send a document for signing
// 1. Upload document
const form = new FormData();
form.append('file', pdfFile);
form.append('title', 'Service Agreement');

const doc = await fetch('https://sign.bukka.ai/api/documents', {
  method: 'POST',
  headers: { Authorization: 'Bearer your_jwt_token' },
  body: form
});
const { id } = await doc.json();

// 2. Add recipients and fields, then send
await fetch(`https://sign.bukka.ai/api/documents/${id}`, {
  method: 'PUT',
  headers: {
    Authorization: 'Bearer your_jwt_token',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    recipients: [
      { email: 'signer@company.ca', name: 'Jane Smith', role: 'signer' }
    ],
    fields: [
      { type: 'signature', page: 1, x: 60, y: 85, width: 20, height: 6 }
    ]
  })
});

// 3. Send for signatures
await fetch(`https://sign.bukka.ai/api/documents/${id}/send`, {
  method: 'POST',
  headers: {
    Authorization: 'Bearer your_jwt_token',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({ mode: 'parallel' })
});
POST/api/auth/signup

Create a BukkaSign account.

POST/api/auth/login

Authenticate and receive a JWT token.

GET/api/documents

List all documents with recipient counts.

POST/api/documents

Upload a PDF and create a signing document.

GET/api/documents/:id

Get document details, recipients, fields, and audit trail.

PUT/api/documents/:id

Update fields, recipients, or expiry date.

POST/api/documents/:id/send

Send document for signatures (parallel or sequential).

POST/api/documents/:id/void

Void a document and notify all parties.

POST/api/documents/:id/remind

Send reminders to pending signers.

GET/api/documents/:id/download

Download signed PDF (with watermarks for voided/expired).

GET/api/documents/:id/certificate

Download Certificate of Completion PDF.

GET/api/sign/:token

Get document info for signing (public, no auth).

POST/api/sign/:token

Submit signature fields (public, no auth).

GET/api/templates

List reusable document templates.

POST/api/templates

Create template from PDF upload or existing document.

POST/api/templates/:id/use

Create and send a new document from a template.

POST/api/bulk-send

Send same document to up to 100 recipients.

GET/api/analytics/overview

Dashboard stats, completion rates, and activity.

GET/api/webhooks

List registered webhook endpoints.

POST/api/webhooks

Register a webhook for signing events.

Webhook events — Subscribe to real-time notifications when documents are signed, completed, voided, or expired.

document.sentdocument.completeddocument.voideddocument.expiredrecipient.signedrecipient.declined
Features

Sequential & parallel signing, document expiry with auto-enforcement, PDF watermarks (DRAFT/VOID/EXPIRED), bulk send (up to 100 recipients), reusable templates, SHA-256 audit trail, Certificate of Completion, and PIPEDA-compliant Canadian data residency.

Ready to integrate?

Connect your product to premium email infrastructure.

Launch console