Product · Sessions & schedules

Log in once.Hear only about what changed.

A session keeps a site's login between jobs, so later runs skip straight past it. A schedule runs a program on a cron, compares each result with the last, and sends an event only when the data actually changed.

product · sessions & schedulesloop

How it works

  1. 01

    Save the session after login

    A checkpoint can save the browser's session under a name. A program that resumes from that session starts at the checkpoint after the login whenever the session is still valid, and logs in again when it is not.

    example
    { "options": { "session": "acme", "resume_from_session": true },
      "steps": [
        { "goto": "https://portal.example.test/login" },
        …,
        { "checkpoint": { "name": "logged_in", "save_session": "acme" } },
        { "extract": { "plan": ".plan-name" } }
      ] }
  2. 02

    Schedules with a timezone

    A schedule is a program, its inputs and a cron in an IANA timezone. Daylight saving is handled, overlapping runs are skipped, and missed runs are not replayed unless you ask.

    example
    curl -X POST https://api.kaab.ist/v1/schedules \
      -H "Authorization: Bearer $KAAB_API_KEY" \
      -d '{
        "program": "plan-watch",
        "cron": "0 9 * * *",
        "timezone": "Europe/Istanbul",
        "change_detection": { "enabled": true, "fields": ["plan", "price"] }
      }'
  3. 03

    Only what changed

    Each successful run's data, limited to the fields you name, is compared with the previous run's. When it differs you get a schedule.changed event with the changed paths and a JSON Patch of the difference.

Questions

Askedbefore you ask.

Schedules pause instead of failing, and pick up again once there are credits to run on.

More of Kaabist

  • Resumes where it stopped

    Some steps only you can finish: a one-time code, a captcha, an approval. Kaabist pauses the run right there and emails a link to you, or to the teammate or customer you choose. Once they answer, the program continues from its last checkpoint. Nothing starts over.

  • Built by your coding agent

    Connect Claude Code, Codex or Cursor to mcp.kaab.ist. Your agent opens a real Kaabist browser, works through the site with you, and what it does becomes a program: versioned, linted, and tested with a dry run before it ever submits anything.

  • Never submits twice

    Mark the steps that change something (a submit, a payment, an order) as side effects. Kaabist writes each one down just before it runs and again once it has worked. If a server crashes in between, Kaabist never presses the button again on its own: it pauses and asks you to check.

Stop fixing selectors.Ship the automation.

Opening soon

Kaabist is getting ready for launch. The panel, the docs and the status page open on launch day.