Overview

Kora Apply SDK is designed to be dropped into any website as an HTML snippet. For many web editors (Squarespace, Webflow, Framer, etc) this can be achieved using an Embed element or similar. The SDK is mapped one-to-one with jobs using unique identifiers. This means you can drop the SDK into any existing job page without updating the description, linking, etc.

Quick Start

  1. Open your job page in your chosen editor Go to the page where you want the application form to appear.
  2. Copy the integration snippet into your website. For web editors this can be done using an Embed element. If you’re editing the website yourself you can drop the snippet directly into the HTML.
  3. Replace <Update to mapped Job ID> for your role You can find the Job ID for your role from my.hirekora.com under role you wish to integrate.
  4. Test the integration You should see the application window appear in your chosen location.

What the start of the application should look like:

ApplyWindow.png

Authentication

The SDK connects to your organization using a public key. You can find your public key my.hirekora.com under “Organization.”

SDK Integration Snippet

<script src="<https://sdk.hirekora.com/kora-apply.js?v=20250919>"></script>

<div id="apply-container">Loading application…</div>

<script>
  console.log("Starting KoraApply embed snippet...");

  function initKora() {
    console.log("initKora() called...");

    const jobID = "**<Replace with Job ID>**";
    const publicKey = "**<Replace with Public Key>**"
    
    const container = document.getElementById("apply-container");
    if (!container) {
      console.error("No #apply-container found in DOM");
      return;
    }
    console.log("Found #apply-container:", container);

    if (!window.KoraApplyWidget) {
      console.error("window.KoraApplyWidget is missing");
      return;
    }
    if (typeof window.KoraApplyWidget.init !== "function") {
      console.error("window.KoraApplyWidget.init is not a function");
      return;
    }

    console.log("⚡ Running KoraApplyWidget.init with jobID + publicKey...");
    container.innerHTML = "";
    window.KoraApplyWidget.init("apply-container", { jobID, publicKey });

    console.log("KoraApplyWidget.init() completed");
  }

  if (document.readyState === "loading") {
    console.log("Document still loading, waiting for DOMContentLoaded...");
    window.addEventListener("DOMContentLoaded", () => {
      console.log("DOMContentLoaded fired, calling initKora()");
      initKora();
    });
  } else {
    console.log("Document already ready, calling initKora() immediately...");
    initKora();
  }
</script>