рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ 15 / 22

API keys and webhooks

Scoped keys with expiry and IP limits, and signed webhook deliveries you can verify.

Length 5:11Published 28 рд╕рд┐рддре░ 2026рднрд╛рдЧ рджреЛ тАФ рдЗрд╕реЗ рдЪрд▓рд╛рдПрдБWatch on YouTube

рдкреНрд▓реЗ рджрдмрд╛рдиреЗ рдкрд░ рд╣реА рдкреНрд▓реЗрдпрд░ YouTube рд╕реЗ рд▓реЛрдб рд╣реЛрддрд╛ рд╣реИред

Step by step

After this video you can give another tool a key that reads or writes only what it needs, and send LumaKol events to your own endpoint with a signature you can check.

  1. 1

    Create a key for one tool

    Integrations тЖТ API & webhooks тЖТ Create key. Name it after the tool, not the person: that name shows in the list and in the security log. Tick only the permissions it needs, such as leads:read, leads:write, calls:read, users:read or webhooks:manage.

  2. 2

    Add an expiry and IP limits

    A key can have a date it stops working and a list of IP addresses it may be used from. Both can be changed later without changing the key.

  3. 3

    Copy the key now

    The key starts with lk_live_ and is shown once, straight after you create it. Only a hash is stored, so nobody can read it back; if it is lost, revoke it and issue a new one.

  4. 4

    Make the first call

    The page shows your base URL, and the key goes on every request as a bearer token. GET /ping answers with the workspace and the permissions the key carries, which proves the key, header and address before you write real code.

  5. 5

    Add a webhook

    Integrations тЖТ API & webhooks тЖТ Add webhook. The URL must be https and reachable from the internet. Tick the events you want, such as lead.created, lead.stage_changed or call.logged, then use Test to queue a sample delivery.

  6. 6

    Verify the signature

    Every delivery carries X-LumaKol-Signature: an HMAC-SHA256 of the timestamp, a full stop and the raw body, keyed with the signing secret that starts with whsec_. Recompute it over the bytes you received and reject anything that does not match.

  7. 7

    Read the delivery log

    Recent deliveries under a webhook shows each event, whether it went through, and the status code or error. Anything that is not a 2xx is retried several times over about sixteen hours, and X-LumaKol-Delivery stays the same across retries so you can ignore repeats.

  8. 8

    Revoke a key when it is done with

    Revoke stops everything using the key at once and cannot be undone. The list shows when each key was last used, which is the quickest way to spot one nothing needs any more.

Tips

  • A dashboard that only displays numbers needs leads:read and nothing else.
  • Answer a webhook with a 2xx as soon as you have the payload and do your own work afterwards.
  • API keys are available on paid plans, not during the free trial.

рдЕрдкрдиреА рдЯреАрдо рдХреЛ рдРрд╕рд╛ CRM рджреЗрдВ рдЬреЛ рд╣рд░ рдХреЙрд▓ рджрд░реНрдЬ рдХрд░реЗ

рдЕрдкрдирд╛ рд╡рд░реНрдХрд╕реНрдкреЗрд╕ рд╕реЗрдЯ рдХрд░реЗрдВ рдФрд░ рдЙрд╕реА рджрд┐рди рдХреЙрд▓ рдХреИрдкреНрдЪрд░ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВред

  • рдХрд╛рд░реНрдб рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ
  • рдХреЙрд▓ рди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ 3 рдПрдбрдорд┐рди рддрдХ рдореБрдлрд╝реНрдд
  • рдЕрдкрдиреЗ рд╣реА SIM рд╕реЗ рдХреЙрд▓
LumaKol рдпрд╣рд╛рдБ рдкрд╛рдПрдБ