---
title: "Connecting Crono to n8n"
description: "This guide explains how to connect Crono to n8n using the HTTP Request node and the Crono External API."
url: https://help.crono.one/en/articles/58-connecting-crono-to-n8n
collection: "n8n"
updated: 2026-09-14
language: en
---

# Connecting Crono to n8n

This guide explains how to connect Crono to n8n using the HTTP Request node and the Crono External API.

This guide covers how to integrate Crono with **n8n** using the Crono External API. Because n8n can send HTTP requests, you can create records, enrich information and automate workflows in Crono without writing code.

## What you can do with Crono and n8n

Anything that involves sending data into Crono. Common cases:

-   Creating companies or contacts from an external data source
    
-   Syncing leads from spreadsheets, forms, CRMs or webhooks
    
-   Adding records to Lists automatically
    
-   Triggering enrichment on new leads
    
-   Keeping Crono up to date with data from other tools
    
-   Building multi-step automations that combine Crono with other platforms
    

## How the integration works

There is no dedicated Crono node in n8n, and you do not need one. You use n8n's **HTTP Request** node to call Crono's API endpoints directly.

Each request needs four things: the **endpoint URL**, an **HTTP method** (GET, POST, PUT, PATCH, DELETE), your **authentication headers**, and a **JSON body** for POST, PUT and PATCH.

Because it is plain HTTP, this approach works with every current and future Crono endpoint.

## Before you start

1.  Your workspace has API access — available on **Ultra and Enterprise**, and enableable on request for other plans.
    
2.  Your role is **Manager**.
    
3.  You have generated your **Public API Key** and **Private API Key** — see [How to generate API keys](https://help.crono.one/en/articles/55-how-to-generate-api-keys.md).
    
4.  You have the API reference to hand: [**ext.crono.one/docs**](https://ext.crono.one/docs/)
    

Without all four, your requests will not authenticate.

## Creating the HTTP Request node

1.  Inside a workflow, add a node using the plus button in the top-right corner.
    

![](https://staticfiles.gleap.io/ghelparticle/3uF3rWZkGIEgQPw4kmeawNXccofPKgjxb85549VPQB3HcAhY0saEDlWyUFJW3NlDDkJNEMy9ZdX.png)

2.  Search for the HTTP Request node.
    

![](https://staticfiles.gleap.io/ghelparticle/03RwjXNxMtcXI3SGC6RZniF9H6IWpKzvhI9L7h77PYeAZLu56hTG7zZ09S3f40FfWdN2WpISMTh.png)

3.  Select it.
    

![](https://staticfiles.gleap.io/ghelparticle/d8ASUhzLCTC3L8T5CHmLpJz8z88YWJ160VkU7i0W2ek3KEumRUTkYD5L5Xbo6zOIosOJJE1roh7.png)

Every Crono integration starts here, then gets configured with the endpoint you want to call.

## Authentication

Every request needs two headers:

-   `X-Api-Key` — your Public API Key
    
-   `X-Api-Secret` — your Private API Key
    

![](https://staticfiles.gleap.io/ghelparticle/a9sVxhD3gJXGTPsBe0SodsdYDXFMGi6NQ5joiCeB3Hr83lHo55eAZ8iZRht6ZYj6rnPlXkYmgPT.png)

Once you have generated the keys, add them to the HTTP Request node like this:

1.  Set **Authentication** to _None_ — Crono authenticates on headers, not on n8n's built-in auth.
    
2.  Turn on **Send Headers**.
    
3.  Add both keys under **header parameters**.
    

![](https://staticfiles.gleap.io/ghelparticle/L5Cedio9XVjwPOCCBT2yCySKQUTKDjSL4A6LzVBIMsa3JWBE8DAzO1KvIz5SMh6mr4f4pmUDp3S.png)

## Choosing the endpoint

Base URL:

```javascript
https://ext.crono.one/api/v1
```

Common endpoints:

-   **Create a company:** `/Accounts`
    
-   **Create a contact:** `/Contacts`
    
-   **Add items to a List:** `/Lists/{listId}/Items`
    
-   **Trigger enrichment:** `/Enrich`
    
-   **Update a record:** `/Accounts/{id}` or `/Contacts/{id}`
    

Note the naming: a **Company** in the Crono interface is an **Account** in the API, and a **Contact** is a **Prospect** in some payloads. See [Crono object names: interface vs API](https://help.crono.one/en/articles/100-crono-object-names-interface-vs-api.md). Full endpoint documentation is at [ext.crono.one/docs](https://ext.crono.one/docs/).

## Sending JSON

Most endpoints need a JSON body. In the HTTP Request node:

-   Enable **Send Body**
    
-   Set **Body Content Type** to _Raw_
    
-   Set **Content Type** to _application/json_
    
-   Insert your payload
    

To pass data through from an earlier node, use n8n expressions in the payload rather than hard-coded values.

## Handling the response

The node returns Crono's response as JSON, which you can feed into further nodes, decision logic, updates to other tools, notifications or logging — which is what makes multi-step workflows possible.

## In short

1.  Use the **HTTP Request** node
    
2.  Add your API keys as headers
    
3.  Pick the right endpoint
    
4.  Send a JSON body where required
    
5.  Use the response to continue the automation
