Integrations

Connect Bulko to your process

REST API for campaigns and data, IMAP sync for replies, separate SMTP Access, and setup guides for popular SMTP providers.

Code samples

Launch a campaign from any language

Minimal example: creating a campaign and starting the send. Input — a list of emails and a template. Output — campaign_id and the statistics dashboard URL.

Endpoints (short list)
POST/api/v1/campaigns/launchCreate and launch a campaign
GET/api/v1/campaigns/{id}/statsCampaign statistics
POST/api/v1/subscribers/importImport Addresses (JSON)
GET/api/v1/replies/?status=positiveReply list with filters
GET/api/v1/smtp/accessesSMTP Access Limits
GET/api/v1/account/balanceEmail and AI credits

The API token is generated in your profile settings. Rate limit: 60 requests/min per token.

# Launch a campaign
curl -X POST 'https://bulko.io/api/v1/campaigns/launch' \
  -H 'Authorization: Bearer YOUR_API_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "Q2 Outreach",
    "subject": "{Hi|Hello} {{name}}",
    "body": "<p>Hi {{name}}, ...</p>",
    "subscriber_list_id": 42,
    "ai_rotation": true
  }'
Webhooks · in development

Webhooks are the next API stage

Outbound webhooks are not currently available in production. The events below are planned after the REST API is stabilized. For current automation, poll the statistics and replies endpoints.

delivered

The email was successfully accepted by the recipient's SMTP server. Contains campaign_id, recipient, smtp_used, timestamp.

opened

The recipient opened the email. Unique opens (one event per address).

clicked

Click on a link. Contains url, recipient, and campaign_id.

replied

A reply was received. Contains body, AI classification (positive/negative/question), confidence.

bounced

Bounce. Contains SMTP error code (550, 553, 421...) and raw bounce-reason.

unsubscribed

The recipient clicked the unsubscribe link. The email is added to the global suppression list.

replied.json
// Planned "replied" payload — not yet a production API
{
  "event": "replied",
  "campaign_id": 142,
  "recipient": "[email protected]",
  "reply": {
    "subject": "Re: Quick question",
    "body": "Sounds great, when can we talk?",
    "received_at": "2026-05-09T14:32:11Z",
    "ai_classification": "positive",
    "ai_confidence": 0.94
  },
  "timestamp": "2026-05-09T14:32:14Z"
}
SMTP

SMTP providers

This is a library of step-by-step standard SMTP guides, not a list of native Bulko integrations. Use Campaign Platform or SMTP Access to send without your own setup.

Stripe · USDC

Payment gateways

Optimal payment methods for each region. All providers process payments on their end; Bulko does not store card details.

Stripe

Visa / Mastercard / Apple Pay / Google Pay. All international cards.

USDC

Crypto payments with extended stablecoin support.

Zapier · n8n · CRM

No-code and CRM

You can call the REST API through a generic HTTP Request/Webhooks action. Bulko does not yet have listed apps in these service directories.

Zapier

Use Webhooks by Zapier to POST to the address import and campaign launch endpoints.

n8n

The HTTP Request node gives full control over the JSON body and can periodically retrieve statistics and replies.

CRM (HubSpot, Pipedrive, Bitrix24)

Connect your CRM to the REST API through its built-in HTTP actions or an intermediate Zapier/n8n workflow. This is not a native integration.

Need a custom integration?

Describe your task — we'll help you choose the best approach. SDK examples for Python and Node.js on request.