Trail Map โ€บ Use-Case Catalog โ€บ Integrations
๐Ÿ”Œ Admin & Extend ยท Module 11

Integrations: Keep Every System of Record in Sync

How API keys and webhooks let SmartLite talk automatically to the other tools your company uses โ€” sending data out, and receiving data in. Some of this trail (testing with a terminal command) is a bit more technical than most.

4
Tabs
~14 min
Time to Complete
80 pts
Available
1 Badge
Integration Engineer

Why integrations matter

FN
Finn Osei ยท Finance Operations Lead

"The moment a deal closes, our finance system needs to know immediately so invoicing can start. Nobody should have to manually retype closed deals into a second system โ€” that's exactly how numbers drift apart."

Almost every business runs more than one software system โ€” a CRM, a finance tool, a support tool, and so on. An integration is a connection that lets two systems talk to each other automatically, without a person copying data between them by hand.

๐Ÿ’ก
What this means for you
Closed deals reach other systems the instant they close. Data from outside systems lands in the CRM automatically too โ€” with a full log of what was sent and received, for troubleshooting.

Anatomy of the integration layer

Data can flow two ways: outbound (SmartLite sending data out to another system) and inbound (another system sending data into SmartLite). Each direction has its own tools:

DirectionToolUse case
OutboundAPI Keys โ€” a secret password-like code, scoped to specific permissions (READ / WRITE / DELETE / BULK / ADMIN)Let an external system securely ask SmartLite for data or send it changes
OutboundWebhooks โ€” a signed, verified message, e.g. sent when a record is updatedPush a real-time alert to any web address the moment a record changes
InboundPull Connectors โ€” SmartLite checks another system on a regular scheduleFetch records from another system automatically and add or update them in SmartLite
InboundInbound Webhooks (verified messages) / Bulk & Excel importReceive data pushed from elsewhere โ€” like a new order from an online store โ€” and create or update CRM records automatically
โœ…
Same rules as manual entry
Every record that arrives this way is treated exactly like one entered by hand. Workflows, audit logs (the permanent change history), plan limits, and outbound webhooks all still apply.
โš ๏ธ
Rate limits are real
A rate limit caps how many requests you can make per minute โ€” think of it as a speed limit for API traffic. Each API key gets 60 requests per minute on the Starter plan, more on paid plans. Go over it, and you get an error code 429 back, with a Retry-After header telling you how long to wait.

1 Push closed deals to a finance webhook

Create an API keyGo to Integrations โ†’ API Keys โ†’ New Key. Name it "Finance Sync," with scopes READ + WRITE. Copy the key shown โ€” it's only shown once, so save it somewhere safe.
Register an outbound webhookGo to Integrations โ†’ Webhooks โ†’ New Endpoint. Enter the URL of your test receiver, and pick the event record.updated (fires whenever a record changes).
Trigger itUpdate a real Opportunity's stage to "Closed Won" and check that your receiver got the message.
Verify the signatureCheck the X-SmartLite-Signature header โ€” a code that proves the message really came from SmartLite. Recompute it using your endpoint secret to confirm it matches.
Test the API keyFrom a terminal, run: curl -H "Authorization: Bearer <key>" http://localhost:8080/api/v1/records/opportunity and confirm you get your records back.

Day-to-day: admins and finance ops

Add a new outbound connection when a system needs to knowRegister another webhook whenever a new downstream system needs real-time updates.
Check the delivery log when something looks offOpen Integrations โ†’ Webhooks to see the delivery/error history for troubleshooting.

Day-to-day: developers wiring up a new tool

Request a scoped API keyAsk an admin for a key with only the permissions your integration actually needs โ€” READ-only if you're not writing data back.
Handle rate limits gracefullyWatch for a 429 response and respect the Retry-After header instead of hammering the API.
๐ŸŽฏ
What to try next
Look at the Zapier Integration trail โ€” it uses this exact same API key and webhook system, pre-wired for no-code tools.

Test what you learned

1. A record created through a bulk API import โ€” does it trigger Workflow Rules the same way a manual create does?
Yes โ€” it's treated exactly the same as a record entered by hand
No โ€” imported records skip workflows to save time
2. What happens when an API key goes over its rate limit?
The request quietly succeeds but gets queued up
You get an error code 429 back, with a Retry-After header