API Documentation

GETTING STARTED

Getting started guide

Connect your existing website forms to Fernnel and automatically send new leads to your Fernnel account.

Overview

Fernnel's Lead Ingestion API allows your website or backend application to send lead information directly to Fernnel.

This is designed for businesses that already have their own contact form, enquiry form, registration form or other lead capture system and want those submissions to appear automatically in Fernnel.

Why use the Lead Ingestion API?

You do not need to replace your existing website forms or build your booking experience around Fernnel. Your existing system can continue collecting information while Fernnel handles lead management.

1

Customer submits a form

A visitor submits your existing website form.

2

Your server sends the lead

Your backend securely sends the lead data to Fernnel.

3

Lead appears in Fernnel

The submitted information becomes available in your Fernnel lead management system.

Getting started

Before you begin

A few things you’ll need before connecting your website to the Fernnel lead ingestion API.

  1. 1

    Create your Fernnel account

    Sign up for a free Fernnel account to create your booking pages and manage incoming leads.

  2. 2

    Generate your encryption key

    Open Settings in your Fernnel account and scroll to Data Encryption Key. Generate your key and store it securely on your server.

  3. 3

    Create an API key

    Open Get API Keys from the sidebar, select the booking page you want to connect, and generate an API key for it.

  4. 4

    Connect your website

    Follow the integration guide to encrypt your lead data and securely send form submissions to the Fernnel API.

REQUEST CONFIGURATION

Request details

Send your lead data to the ingestion endpoint using the required authentication and request headers.

Headers

Include your API key with every request and specify JSON as the request content type.

Header
Description
X-API-KEYRequired

Your Fernnel lead ingestion API key.

Content-TypeRequired

Must be set to application/json.

Keep your API key private

Your API key should only be used from your server. Never expose it in browser-side JavaScript or public frontend code.

Request Body

Prepare your lead data using the payload schema provided in the Guide on your API Key page. Encrypt the complete payload with your encryption key, then send the encrypted value in the request body.

1. Prepare your payload

Create your lead payload according to the schema provided in your API Key Guide.

{
  
  " customer_name " : " James Smith",
  " customer_email " : " james@example.com",
  " form_data " : {
    "phone" : " +122635621 ",
    "address" : " Birsbane, Queensland ",
        }
  }

2.Encrypt your payload

Encrypt your payload using the provided encryption key with Fernet encryption.View Fernet documentation

application/json
{
  "encrypted_data": "DHHHHsjsis..."
}

3. Example Request

Example request
cURL
curl -X POST "https://dash.fernnel.com/api/v1/leads/ingest" \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key" \
  -d '{
  "encrypted_data": "DHHHHsjsis..."
}'

4. Response

Response
{
    "success": true,
    "message": "Appointment created",
    "status_code": 201
}'

Error responses

401Unauthorised

The request could not be authenticated because the X-API-KEY header is missing or invalid.

How to fix: Check that you are using the API key generated for the correct Fernnel booking page.

400Bad Request

The encrypted payload is invalid or could not be decrypted by Fernnel.

How to fix: Verify that the payload was encrypted with your Fernnel Data Encryption Key and has not been modified.

422Validation Error

The request was received, but the submitted data does not match the required request format.

How to fix: Check the request body and make sure all required fields contain valid values before sending the request.

429Too Many Requests

The request limit has been exceeded for the lead ingestion endpoint.

How to fix: Wait before sending another request. The endpoint allows up to 50 requests per minute.

500Internal Server Error

Fernnel encountered an unexpected problem while processing the request.

How to fix: Retry the request. If the issue continues, contact Fernnel support with the request details.

Rate limiting

To keep the API reliable and prevent excessive traffic, Fernnel limits requests to the lead ingestion endpoint.

Limit

50 requests / minute

The lead ingestion endpoint allows up to 50 requests per minute. Requests above this limit are temporarily rejected to help protect the API and maintain reliable service.

429

When the limit is exceeded, the API returns 429 Too Many Requests. Wait before sending additional requests.

Footer background