Solutions / Integration-Kit

Integrate once. Keep it forever.

Every team builds the same integrations — one bespoke module per customer, each written once, entangled with one tenant, and maintained until someone quietly stops. Integration-Kit turns each of them into a certified definition in a registry: built once, served to every tenant, and spoken to through one small contract your product learns a single time.

the whole integration — stored, not coded
{
  "operation": "message.send",
  "request": {
    "method": "POST",
    "path": "/messages",
    "body": { "to": "$input.recipientId", "text": "$input.body" }
  },
  "response": { "id": "$response.id", "createdAt": "$response.created_at" },
  "errors": [{ "status": 429, "action": "retry" }]
}

// and the only line your product ever writes:
await engine.execute({ connectionId, capability: 'message.send', input })
0
capabilities in the contract — the whole language your product learns
0
certified definition per system, serving every tenant you will ever have
0
secrets storable in the library — the engine refuses them at the door
0
states in a definition’s lifecycle — only the final two can execute
Why this one

The integration you build compounds.

A bespoke integration is a cost you pay per customer. A certified definition is an asset the next customer inherits — that inversion is the whole product.

Your product speaks one language

Find a person, send a message, fetch a record — twenty-one things applications actually ask external systems to do. Your code calls those; which CRM answers is a detail it never learns.

An integration is data, not code

Connecting a new system does not add a module to your codebase. It adds a definition to a registry — validated on the way in, interpreted at runtime, versioned like the artifact it is. There is nothing to deploy.

Built once, available to everyone

The definition answers "how do we talk to Salesforce?" exactly once. Each customer brings only their own connection — their settings, their credentials — so the integration your first customer needed is already waiting for your ten-thousandth.

Certified means certified

Every definition walks a lifecycle — draft, generated, testing, certified, published — and nothing a customer touches can execute before it passes. Publishing a fix retires the version it replaces, everywhere, at once.

Secrets never enter the library

A definition physically cannot contain a credential — the engine refuses to store one. Each tenant’s secrets stay in your vault, borrowed for a moment per call, so a shared integration never shares a key.

Drift is a signal, not a mystery

When a provider changes shape, the engine records exactly what stopped matching, per connection, with health that degrades visibly. That precision is what lets an AI builder draft new integrations — and, next, repair old ones.

Where the family fits in. Connections carry the same opaque tenant id as everything else here, so tenant-kit isolation extends to your integrations, and what an execution costs can land on the same meter billing-kit already runs. Like UI-Kit, it installs into your repo and stays there.

Stop rebuilding the same integration.

One contract for your product, one registry for every system it will ever meet — and each integration built becomes part of the library, permanently.