Skip to main content

API Documentation

Build powerful integrations with the Klear CRM API

REST API — 99.99% uptime

RESTful API for Automation

Integrate Klear CRM with your existing tools. Works with Zapier, Make, and custom integrations.

Authentication

All API requests require authentication using an API key.

Getting Your API Key

  1. Log in to your Klear CRM account
  2. Go to SettingsIntegrations
  3. Click Generate API Key or copy your existing key
  4. Store your API key securely - it won't be shown again

Using Your API Key

Include your API key in the Authorization header:

Authorization: Bearer YOUR_API_KEY

Alternative: Pass as query parameter ?api_key=YOUR_API_KEY or header X-API-KEY: YOUR_API_KEY

Base URL

https://api.klearcrm.com/api

All endpoints are relative to this base URL.

API Endpoints

Complete list of available endpoints for integration.

GET/zapier/contacts

List all contacts (polling trigger)

Parameters:

limit (optional, default: 20, max: 100)

Response:[{ id, name, email, phone, company, stage, notes, tags, created_at, updated_at }]
POST/zapier/contacts

Create a new contact

Parameters:

name (required), email, phone, company, stage, notes, tags

Response:{ id, name, email, phone, company, stage, notes, tags, created_at }
GET/zapier/contacts/search

Find a contact by email or phone

Parameters:

email or phone (one required)

Response:[{ id, name, email, phone, company, stage, notes, tags, created_at, updated_at }]
PUT/zapier/contacts/:id

Update an existing contact

Parameters:

name, email, phone, company, stage, notes, tags (all optional)

Response:{ id, name, email, phone, company, stage, notes, tags, created_at, updated_at }
POST/zapier/messages

Send an SMS message

Parameters:

to (required), message (required), from_phone_id (optional)

Response:{ id, from, to, body, status, created_at }
GET/zapier/messages

List messages (polling trigger)

Parameters:

limit (optional), direction (optional: inbound/outbound)

Response:[{ id, from, to, body, direction, status, created_at }]
GET/zapier/calls

List calls (polling trigger)

Parameters:

limit (optional, default: 20, max: 100)

Response:[{ id, from, to, direction, status, duration, recording_url, created_at }]
GET/zapier/phone-numbers

List available phone numbers

Parameters:

none

Response:[{ id, phone_number, friendly_name }]
GET/zapier/pipeline-stages

List pipeline stages

Parameters:

none

Response:[{ id, name }]
GET/zapier/me

Get authenticated account info

Parameters:

none

Response:{ id, name, email, company, plan, phone_numbers_count }

Webhooks

Subscribe to real-time events. Configure webhooks in Settings → Integrations.

EventDescription
contact.createdTriggered when a new contact is created
contact.updatedTriggered when a contact is updated
message.receivedTriggered when an SMS is received
message.sentTriggered when an SMS is sent
call.completedTriggered when a call ends
call.missedTriggered when a call is missed

Webhook Payload Example

{
  "event": "contact.created",
  "timestamp": "2024-01-15T10:30:00.000Z",
  "data": {
    "contact": {
      "id": "abc123",
      "name": "John Smith",
      "email": "john@example.com",
      "phone": "+15551234567",
      "company": "Acme Inc",
      "stage": "new",
      "created_at": "2024-01-15T10:30:00.000Z"
    }
  }
}

Webhooks include an X-Klear-Signature header for verification (HMAC-SHA256).

Zapier Integration

Connect Klear CRM with 5,000+ apps using Zapier.

Available Triggers

  • +

    New Contact

    Triggers when a new contact is created

  • +

    New Message

    Triggers when a message is sent or received

  • +

    New Call

    Triggers when a call is completed

Available Actions

  • Create Contact

    Add a new contact to your CRM

  • Update Contact

    Update an existing contact's information

  • Send SMS

    Send an SMS to any phone number

  • Find Contact

    Search for a contact by email or phone

Error Codes

Standard HTTP status codes are used to indicate success or failure.

CodeDescription
200Success
400Bad Request - Invalid parameters or missing required fields
401Unauthorized - Invalid or missing API key
404Not Found - Resource does not exist
429Rate Limited - Too many requests
500Server Error - Something went wrong on our end

Rate Limits

API requests are rate limited to ensure fair usage.

1,000

Requests per minute

100,000

Requests per day

99.9%

Uptime SLA

Need higher limits? Contact us for enterprise plans.

Ready to integrate?

Get your API key and start building in minutes.