Your system leads, ours answers
No connector to maintain and no roadmap of ours to wait for. Your system creates leads, requests comparisons and launches contracts against our API, and receives a signed event whenever something changes. What you build is yours.
What “API friendly” means
Three concrete things. That everything a person does in the CRM can be done through the API from your system, under the same rules. That you don’t have to ask: when something changes, we tell you with a webhook. And that the API is a contract: documented, versioned, with no fields appearing or disappearing without notice.
The result is that a channel with its own CRM, website or ERP doesn’t have to change tools to work with us.
What your system can do
| Action | What you get |
|---|---|
| Create a lead | The opportunity is born in the CRM with your entry channel and, if you say so, assigned to a rep. |
| Request a comparison | With an invoice or a CUPS. Returns the channel’s catalogue tariffs against the current one, with the saving broken down. |
| Launch a contract | With the accepted comparison or directly. It enters onboarding and from there the events reach you. |
| Check status | Of a lead, a file or your portfolio, with the reason if something is stuck. |
| Check settlements | The channel’s accrued, settled and pending amounts. |
Some of these capabilities arrive in phases. In the demo we tell you which are open today and with what limits; we don’t publish a list here that would go stale.
Webhooks: we tell you
Every relevant change —lead created, comparison ready, proposal accepted, contract sent, contract rejected with its reason, contract activated, settlement closed— fires an event to the URL you registered.
- Signed. Every event carries a signature with your channel’s secret; you verify it came from us and wasn’t touched on the way.
- Retries. If your endpoint doesn’t answer, we retry with growing backoff for hours. Nothing is lost to a badly timed deploy on your side.
- And if it keeps failing, a person. The event isn’t dropped silently: the opportunity surfaces as a task for someone on your team, with the pending event attached.
- Idempotent. Every event has an identifier; if you receive it twice, you know it is the same one.
Authentication and environments
- Per-channel keys, one for production and one for testing. Shown once when created; afterwards only the last characters are visible.
- With expiry. Keys expire and are rotated from the CRM itself, without asking us.
- Test environment with invented data, so your team builds without touching real customers.
- Scoped per channel. A key only sees the data of the channel that created it. There is no key that sees everyone.
What never goes out through the API
The API returns a projection: a set of fields declared one by one, the same one the messaging bot and the voice agent read. What goes out is declared, not what is hidden, which is why a new field in the database appears in no integration until someone adds it on purpose.
Out, by design: the channel margin, other channels’ commissions and the IBAN. Not with the production key, not with the test key, not on request.
How to start
Request the test key from your channel’s CRM and register your webhook URL.
Create a lead and request a comparison with a test CUPS. You will see the first two events arrive.
Launch a contract and follow the file to activation, with its events. When it works, switch to the production key.
FAQ
Do you have public API documentation?
The documentation is handed over with the test key, together with the test environment and a collection of examples. It isn’t published openly because part of the API arrives in phases and we prefer that what you read is what you can use today.
Can I connect my CRM without coding?
For HubSpot, Salesforce and Pipedrive there is a mirror of the file that needs no development on your side: the file appears in your CRM with the same fields the API returns. The API is for when you want something tailored.
What happens if you change the API?
It is versioned. Breaking changes go in a new version and the previous one keeps working for an announced period. Adding a field never breaks anything, because your system only reads the ones it knows.