[{"data":1,"prerenderedAt":1939},["ShallowReactive",2],{"navigation":3,"page:\u002Fpanel":1019,"surround:\u002Fpanel":1931},[4,21,82,133,154,1010],[5,6,7,8],"Getting started","\u002Fgetting-started","i-lucide-rocket",[9,12,15,18],[10,6,11,11],"What Kaabist is",0,[13,14,11,11],"API keys and modes","keys-and-modes",[16,17,11,11],"Your first job","first-job",[19,20,11,11],"Understanding the envelope","envelope",[22,23,24,25],"Concepts","\u002Fconcepts","i-lucide-book-open",[26,28,31,34,37,40,43,46,49,52,55,58,61,64,67,70,73,76,79],[27,23,11,11],"Overview",[29,30,11,11],"Programs and versions","programs-and-versions",[32,33,11,11],"Tiers and escalation","tiers-and-escalation",[35,36,11,11],"The http tier","http-tier",[38,39,11,11],"The browser tier","browser-tier",[41,42,11,11],"Sessions","sessions",[44,45,11,11],"Human in the loop","human-in-the-loop",[47,48,11,11],"How healing works","self-healing",[50,51,11,11],"Obstacles and captchas","obstacles",[53,54,11,11],"Validation and warnings","validation-and-warnings",[56,57,11,11],"Credits and billing","credits-and-billing",[59,60,11,11],"Limits","limits",[62,63,11,11],"Locators","locators",[65,66,11,11],"Snapshots","snapshots",[68,69,11,11],"Egress and proxies","egress-and-proxies",[71,72,11,11],"Queueing and fairness","queueing",[74,75,11,11],"Accounts, organisations and roles","accounts-and-roles",[77,78,11,11],"Data retention","data-retention",[80,81,11,11],"Documents and PDFs","documents-and-pdfs",[83,84,85,86],"Guides","\u002Fguides","i-lucide-map",[87,88,91,94,97,100,103,106,109,112,115,118,121,124,127,130],[27,84,11,11],[89,90,11,11],"Authenticated flows","authenticated-flows",[92,93,11,11],"Hosted resolve pages","hosted-resolve",[95,96,11,11],"Lists and pagination","lists-and-pagination",[98,99,11,11],"JSON and network locators","json-and-network-locators",[101,102,11,11],"Schedules and change detection","schedules-and-change-detection",[104,105,11,11],"Webhooks","webhooks",[107,108,11,11],"Bring your own providers","byo-providers",[110,111,11,11],"Testing: replay, dry-run and test mode","testing",[113,114,11,11],"Side-effect safety","side-effect-safety",[116,117,11,11],"Security & data handling","security-and-data",[119,120,11,11],"Migrating from other tools","migrating",[122,123,11,11],"Drift detection and canaries","drift-and-canaries",[125,126,11,11],"SDKs","sdks",[128,129,11,11],"The kaab CLI","cli",[131,132,11,11],"Coding agents (MCP)","mcp",[134,135,136,137],"Panel","\u002Fpanel","i-lucide-layout-dashboard",[138,139,142,145,148,151],[27,135,11,11],[140,141,11,11],"The program builder","builder",[143,144,11,11],"Picking and recording","picking-and-recording",[146,147,11,11],"Taking over a job","takeover",[149,150,11,11],"Getting help","support",[152,153,11,11],"Referrals","referrals",[155,156,157,158],"Reference","\u002Freference","i-lucide-library",[159,160,520,834,837,840,1006,1007],[27,156,11,11],[161,162,11,163],"API","api",[164,166,169,212,222,274,297,316,347,376,389,396,403,410,426,447,454],[27,165,11,11],"\u002Freference\u002Fapi",[167,168,11,11],"Interactive reference","explorer",[170,171,11,172],"Jobs","jobs",[173,176,179,182,185,188,191,194,197,200,203,206,209],[174,175,11,11],"Create job","create-job",[177,178,11,11],"List jobs","list-jobs",[180,181,11,11],"Create job batch","create-job-batch",[183,184,11,11],"Estimate job","estimate-job",[186,187,11,11],"Get job","get-job",[189,190,11,11],"List job steps","list-job-steps",[192,193,11,11],"Get job snapshot","get-job-snapshot",[195,196,11,11],"Get job screenshot","get-job-screenshot",[198,199,11,11],"Get job artifact","get-job-artifact",[201,202,11,11],"Submit job input","submit-job-input",[204,205,11,11],"Resume job","resume-job",[207,208,11,11],"Takeover job","takeover-job",[210,211,11,11],"Cancel job","cancel-job",[213,214,11,215],"Batches","batches",[216,219],[217,218,11,11],"Get batch","get-batch",[220,221,11,11],"List batch jobs","list-batch-jobs",[223,224,11,225],"Programs","programs",[226,229,232,235,238,241,244,247,250,253,256,259,262,265,268,271],[227,228,11,11],"Create program","create-program",[230,231,11,11],"List programs","list-programs",[233,234,11,11],"Lint program","lint-program",[236,237,11,11],"Get program","get-program",[239,240,11,11],"Update program","update-program",[242,243,11,11],"Delete program","delete-program",[245,246,11,11],"List program versions","list-program-versions",[248,249,11,11],"Create program version","create-program-version",[251,252,11,11],"Update program version","update-program-version",[254,255,11,11],"Delete program version","delete-program-version",[257,258,11,11],"Get program version","get-program-version",[260,261,11,11],"Publish program version","publish-program-version",[263,264,11,11],"Diff program version","diff-program-version",[266,267,11,11],"Replay program version","replay-program-version",[269,270,11,11],"Set program alias","set-program-alias",[272,273,11,11],"Delete program alias","delete-program-alias",[41,42,11,275],[276,279,282,285,288,291,294],[277,278,11,11],"Create session","create-session",[280,281,11,11],"List sessions","list-sessions",[283,284,11,11],"Get session","get-session",[286,287,11,11],"Update session","update-session",[289,290,11,11],"Delete session","delete-session",[292,293,11,11],"Verify session","verify-session",[295,296,11,11],"Refresh session","refresh-session",[298,299,11,300],"Proposals","proposals",[301,304,307,310,313],[302,303,11,11],"List proposals","list-proposals",[305,306,11,11],"Get proposal","get-proposal",[308,309,11,11],"Approve proposal","approve-proposal",[311,312,11,11],"Reject proposal","reject-proposal",[314,315,11,11],"Edit proposal","edit-proposal",[317,318,11,319],"Schedules","schedules",[320,323,326,329,332,335,338,341,344],[321,322,11,11],"Create schedule","create-schedule",[324,325,11,11],"List schedules","list-schedules",[327,328,11,11],"Get schedule","get-schedule",[330,331,11,11],"Update schedule","update-schedule",[333,334,11,11],"Delete schedule","delete-schedule",[336,337,11,11],"Pause schedule","pause-schedule",[339,340,11,11],"Resume schedule","resume-schedule",[342,343,11,11],"List schedule runs","list-schedule-runs",[345,346,11,11],"Get schedule run diff","get-schedule-run-diff",[104,105,11,348],[349,352,355,358,361,364,367,370,373],[350,351,11,11],"Create webhook","create-webhook",[353,354,11,11],"List webhooks","list-webhooks",[356,357,11,11],"Get webhook","get-webhook",[359,360,11,11],"Update webhook","update-webhook",[362,363,11,11],"Delete webhook","delete-webhook",[365,366,11,11],"Rotate webhook secret","rotate-webhook-secret",[368,369,11,11],"List webhook deliveries","list-webhook-deliveries",[371,372,11,11],"Resend webhook delivery","resend-webhook-delivery",[374,375,11,11],"Test webhook","test-webhook",[377,378,11,379],"Organisation","org",[380,383,386],[381,382,11,11],"Rotate org webhook secret","rotate-org-webhook-secret",[384,385,11,11],"Get org","get-org",[387,388,11,11],"Request data deletion","request-data-deletion",[390,391,11,392],"Credits","credits",[393],[394,395,11,11],"Get credits","get-credits",[397,398,11,399],"Ledger","ledger",[400],[401,402,11,11],"List ledger entries","list-ledger-entries",[404,405,11,406],"Usage","usage",[407],[408,409,11,11],"Get usage","get-usage",[411,412,11,413],"API keys","api-keys",[414,417,420,423],[415,416,11,11],"List API keys","list-api-keys",[418,419,11,11],"Create API key","create-api-key",[421,422,11,11],"Rotate API key","rotate-api-key",[424,425,11,11],"Revoke API key","revoke-api-key",[427,108,11,428],"BYO providers",[429,432,435,438,441,444],[430,431,11,11],"List BYO providers","list-byo-providers",[433,434,11,11],"Create BYO provider","create-byo-provider",[436,437,11,11],"Get BYO provider","get-byo-provider",[439,440,11,11],"Update BYO provider","update-byo-provider",[442,443,11,11],"Delete BYO provider","delete-byo-provider",[445,446,11,11],"Test BYO provider","test-byo-provider",[448,449,11,450],"Sites","sites",[451],[452,453,11,11],"Get site profile","get-site-profile",[455,456,11,457],"Objects","schemas",[458,460,463,466,469,470,473,476,479,482,485,487,490,493,496,499,502,505,508,511,514,517],[27,459,11,11],"\u002Freference\u002Fapi\u002Fschemas",[461,462,11,11],"ApiKey","api-key",[464,465,11,11],"Batch","batch",[467,468,11,11],"ByoProvider","byo-provider",[390,391,11,11],[471,472,11,11],"ErrorResponse","error-response",[474,475,11,11],"ExtractSchema","extract-schema",[477,478,11,11],"Job","job",[480,481,11,11],"LedgerEntry","ledger-entry",[483,484,11,11],"LintResult","lint-result",[486,378,11,11],"Org",[488,489,11,11],"Program","program",[491,492,11,11],"ProgramDefinition","program-definition",[494,495,11,11],"ProgramVersion","program-version",[497,498,11,11],"Proposal","proposal",[500,501,11,11],"Schedule","schedule",[503,504,11,11],"Session","session",[506,507,11,11],"SiteProfile","site-profile",[509,510,11,11],"StepRecord","step-record",[512,513,11,11],"Webhook","webhook",[515,516,11,11],"WebhookDelivery","webhook-delivery",[518,519,11,11],"WebhookEvent","webhook-event",[521,522,11,523],"DSL","dsl",[524,526,529,532,535,538,603,637,640,751,754,756],[27,525,11,11],"\u002Freference\u002Fdsl",[527,528,11,11],"Inputs","inputs",[530,531,11,11],"Options","options",[533,534,11,11],"Policies","policies",[536,537,11,11],"Steps","steps",[539,540,11,541],"Actions","actions",[542,544,546,548,550,552,554,556,558,560,562,565,568,570,573,575,577,579,582,585,587,589,591,594,596,598,600],[27,543,11,11],"\u002Freference\u002Fdsl\u002Factions",[545,545,11,11],"fill",[547,547,11,11],"click",[549,549,11,11],"press",[551,551,11,11],"hover",[553,553,11,11],"select",[555,555,11,11],"check",[557,557,11,11],"uncheck",[559,559,11,11],"upload",[561,561,11,11],"scroll",[563,564,11,11],"wait_for","wait-for",[566,567,11,11],"set_session","set-session",[569,569,11,11],"extract",[571,572,11,11],"capture_response","capture-response",[574,574,11,11],"evaluate",[576,576,11,11],"paginate",[578,578,11,11],"download",[580,581,11,11],"read_pdf","read-pdf",[583,584,11,11],"set_vars","set-vars",[586,586,11,11],"sleep",[588,588,11,11],"reload",[590,590,11,11],"goto",[592,593,11,11],"await_input","await-input",[595,595,11,11],"checkpoint",[597,597,11,11],"screenshot",[599,599,11,11],"when",[601,602,11,11],"loop_until","loop-until",[604,605,11,606],"Conditions","conditions",[607,609,611,613,615,617,619,621,623,625,627,629,631,633,635],[27,608,11,11],"\u002Freference\u002Fdsl\u002Fconditions",[610,610,11,11],"url",[612,612,11,11],"title",[614,614,11,11],"visible",[616,616,11,11],"hidden",[618,618,11,11],"exists",[620,620,11,11],"absent",[622,622,11,11],"text",[624,624,11,11],"count",[626,626,11,11],"network",[628,628,11,11],"var",[630,630,11,11],"landmark",[632,632,11,11],"all",[634,634,11,11],"any",[636,636,11,11],"not",[638,639,11,11],"Targets","targets",[641,642,11,643],"Fields","fields",[644,646,649,651,654,656,659,661,663,666,668,671,672,674,677,679,681,683,685,687,690,693,695,698,701,703,704,707,709,712,714,716,718,720,722,724,726,728,731,733,734,736,738,740,743,745,747,749],[27,645,11,11],"\u002Freference\u002Fdsl\u002Ffields",[647,648,11,11],"allow_suffix","allow-suffix",[650,650,11,11],"attr",[652,653,11,11],"base_url","base-url",[655,655,11,11],"candidates",[657,658,11,11],"case_insensitive","case-insensitive",[660,660,11,11],"country",[662,662,11,11],"currency",[664,665,11,11],"date_format","date-format",[667,667,11,11],"decimal",[669,670,11,11],"false_values","false-values",[642,642,11,11],[673,673,11,11],"flags",[675,676,11,11],"follow_redirects","follow-redirects",[678,678,11,11],"frame",[680,680,11,11],"json",[682,682,11,11],"locale",[684,684,11,11],"many",[686,686,11,11],"max",[688,689,11,11],"max_items","max-items",[691,692,11,11],"max_length","max-length",[694,694,11,11],"min",[696,697,11,11],"min_items","min-items",[699,700,11,11],"min_length","min-length",[702,702,11,11],"name",[626,626,11,11],[705,706,11,11],"null_markers","null-markers",[708,708,11,11],"nullable",[710,711,11,11],"on_invalid","on-invalid",[713,713,11,11],"pattern",[715,715,11,11],"presence",[717,717,11,11],"regex",[719,719,11,11],"required",[721,721,11,11],"role",[723,723,11,11],"sample",[725,725,11,11],"selector",[727,727,11,11],"source",[729,730,11,11],"strip_fragment","strip-fragment",[732,732,11,11],"testid",[622,622,11,11],[735,735,11,11],"thousands",[737,737,11,11],"timezone",[739,739,11,11],"transforms",[741,742,11,11],"true_values","true-values",[744,744,11,11],"type",[746,746,11,11],"unique",[748,748,11,11],"values",[750,750,11,11],"xpath",[752,753,11,11],"Assertions","assertions",[755,739,11,11],"Transforms",[757,758,11,759],"Lint codes","lint",[760,762,765,768,771,774,777,780,783,786,789,792,795,798,801,804,807,810,813,816,819,822,825,828,831],[27,761,11,11],"\u002Freference\u002Fdsl\u002Flint",[763,764,11,11],"E001","e001",[766,767,11,11],"E002","e002",[769,770,11,11],"E003","e003",[772,773,11,11],"E004","e004",[775,776,11,11],"E005","e005",[778,779,11,11],"E006","e006",[781,782,11,11],"E007","e007",[784,785,11,11],"E008","e008",[787,788,11,11],"E009","e009",[790,791,11,11],"E010","e010",[793,794,11,11],"E011","e011",[796,797,11,11],"E012","e012",[799,800,11,11],"E013","e013",[802,803,11,11],"E014","e014",[805,806,11,11],"W001","w001",[808,809,11,11],"W002","w002",[811,812,11,11],"W003","w003",[814,815,11,11],"W004","w004",[817,818,11,11],"W005","w005",[820,821,11,11],"W006","w006",[823,824,11,11],"W007","w007",[826,827,11,11],"W008","w008",[829,830,11,11],"W009","w009",[832,833,11,11],"W010","w010",[835,836,11,11],"Codes","codes",[838,839,11,11],"Events","events",[841,129,11,842],"CLI",[843,845,847,850,853,856,859,862,865,868,871,874,877,880,883,886,889,892,895,898,901,904,907,910,913,916,919,922,925,928,931,934,937,940,943,946,949,952,955,958,961,964,967,970,973,976,979,982,985,988,991,994,997,1000,1003],[27,844,11,11],"\u002Freference\u002Fcli",[846,846,11,11],"kaab",[848,849,11,11],"kaab auth","kaab-auth",[851,852,11,11],"kaab auth login","kaab-auth-login",[854,855,11,11],"kaab auth logout","kaab-auth-logout",[857,858,11,11],"kaab auth status","kaab-auth-status",[860,861,11,11],"kaab completion","kaab-completion",[863,864,11,11],"kaab completion bash","kaab-completion-bash",[866,867,11,11],"kaab completion fish","kaab-completion-fish",[869,870,11,11],"kaab completion powershell","kaab-completion-powershell",[872,873,11,11],"kaab completion zsh","kaab-completion-zsh",[875,876,11,11],"kaab credits","kaab-credits",[878,879,11,11],"kaab jobs","kaab-jobs",[881,882,11,11],"kaab jobs cancel","kaab-jobs-cancel",[884,885,11,11],"kaab jobs get","kaab-jobs-get",[887,888,11,11],"kaab jobs input","kaab-jobs-input",[890,891,11,11],"kaab jobs list","kaab-jobs-list",[893,894,11,11],"kaab jobs resume","kaab-jobs-resume",[896,897,11,11],"kaab jobs run","kaab-jobs-run",[899,900,11,11],"kaab jobs snapshot","kaab-jobs-snapshot",[902,903,11,11],"kaab jobs steps","kaab-jobs-steps",[905,906,11,11],"kaab jobs takeover","kaab-jobs-takeover",[908,909,11,11],"kaab open","kaab-open",[911,912,11,11],"kaab open job","kaab-open-job",[914,915,11,11],"kaab programs","kaab-programs",[917,918,11,11],"kaab programs alias","kaab-programs-alias",[920,921,11,11],"kaab programs alias set","kaab-programs-alias-set",[923,924,11,11],"kaab programs diff","kaab-programs-diff",[926,927,11,11],"kaab programs lint","kaab-programs-lint",[929,930,11,11],"kaab programs list","kaab-programs-list",[932,933,11,11],"kaab programs pull","kaab-programs-pull",[935,936,11,11],"kaab programs push","kaab-programs-push",[938,939,11,11],"kaab proposals","kaab-proposals",[941,942,11,11],"kaab proposals approve","kaab-proposals-approve",[944,945,11,11],"kaab proposals list","kaab-proposals-list",[947,948,11,11],"kaab proposals reject","kaab-proposals-reject",[950,951,11,11],"kaab proposals show","kaab-proposals-show",[953,954,11,11],"kaab schedules","kaab-schedules",[956,957,11,11],"kaab schedules create","kaab-schedules-create",[959,960,11,11],"kaab schedules list","kaab-schedules-list",[962,963,11,11],"kaab schedules pause","kaab-schedules-pause",[965,966,11,11],"kaab schedules resume","kaab-schedules-resume",[968,969,11,11],"kaab schedules runs","kaab-schedules-runs",[971,972,11,11],"kaab sessions","kaab-sessions",[974,975,11,11],"kaab sessions create","kaab-sessions-create",[977,978,11,11],"kaab sessions delete","kaab-sessions-delete",[980,981,11,11],"kaab sessions list","kaab-sessions-list",[983,984,11,11],"kaab sessions verify","kaab-sessions-verify",[986,987,11,11],"kaab usage","kaab-usage",[989,990,11,11],"kaab version","kaab-version",[992,993,11,11],"kaab webhooks","kaab-webhooks",[995,996,11,11],"kaab webhooks create","kaab-webhooks-create",[998,999,11,11],"kaab webhooks deliveries","kaab-webhooks-deliveries",[1001,1002,11,11],"kaab webhooks list","kaab-webhooks-list",[1004,1005,11,11],"kaab webhooks test","kaab-webhooks-test",[125,126,11,11],[1008,1009,11,11],"Plans and pricing","plans",[1011,1012,1013,1014],"Changelog","\u002Fchangelog","i-lucide-history",[1015,1016],[27,1012,11,11],[1017,1018,11,11],"Deprecations","deprecations",{"id":1020,"title":1021,"body":1022,"breaking":1922,"date":1923,"description":1924,"extension":1925,"generated":1922,"meta":1926,"navigation":1927,"path":135,"seo":1928,"stem":1929,"version":1923,"__hash__":1930},"docs\u002F4.panel\u002F01.index.md","The panel",{"type":1023,"value":1024,"toc":1897},"minimark",[1025,1034,1039,1052,1055,1067,1080,1094,1104,1108,1123,1184,1204,1218,1268,1271,1275,1280,1380,1395,1403,1407,1414,1421,1425,1440,1444,1459,1461,1478,1480,1485,1523,1537,1540,1545,1604,1610,1614,1647,1649,1666,1668,1677,1679,1707,1709,1714,1718,1734,1738,1756,1760,1763,1840,1844,1870,1873],[1026,1027,1028,1029,1033],"p",{},"The panel at ",[1030,1031,1032],"code",{},"app.kaab.ist"," is where people, rather than programs, work with Kaabist: building\nprograms, answering parked jobs, reviewing fixes and managing the organisation. Everything it does\ngoes through the same API your code uses, so what you set up here is what your jobs run with.",[1035,1036,1038],"h2",{"id":1037},"when-to-use-it","When to use it",[1026,1040,1041,1042,1047,1048,1051],{},"Use the panel to build and test programs visually, to answer jobs that need a person, to review the\nhealing proposals Kaabist makes, and for account work: members, keys, billing. Use the API, an\n",[1043,1044,1046],"a",{"href":1045},"\u002Fguides\u002Fsdks","SDK"," or the ",[1043,1049,841],{"href":1050},"\u002Fguides\u002Fcli"," to run jobs from your own systems; the panel shows\nthose jobs too.",[1035,1053,5],{"id":1054},"getting-started",[1026,1056,1057,1058,1062,1063,1066],{},"The first time you sign in, the panel asks one question: what you want to do first (get data from\na site, work behind a login, or call Kaabist from your code). Your answer only\norders the ",[1059,1060,1061],"strong",{},"Get started"," list on the dashboard; ",[1059,1064,1065],{},"Skip for now"," is fine. If you were invited\ninto someone else's organisation as a reviewer or a viewer, it tells you what your role does\ninstead.",[1026,1068,1069,1071,1072,1075,1076,1079],{},[1059,1070,1061],{}," lists a few steps, such as running the sample program, creating your own program,\ncreating an API key and starting a job from your code. Each step ticks itself when your\norganisation has done it, whether you did it here, through the API or a teammate did. ",[1059,1073,1074],{},"Hide","\ntakes the list off the dashboard; ",[1059,1077,1078],{},"Help → Getting started"," brings it back.",[1026,1081,1082,1085,1086,1089,1090,1093],{},[1059,1083,1084],{},"Try the sample"," creates a program called ",[1030,1087,1088],{},"kaabist-sample"," that reads a bookshop's catalogue, and\nopens it in the builder with a short guide: the steps, the same program as JSON, a test run, and\npublishing. It runs on the http tier, so it works on the free plan. Change it or delete it as you\nlike; ",[1059,1091,1092],{},"Help → Replay the builder guide"," opens it again.",[1026,1095,1096,1099,1100,1103],{},[1059,1097,1098],{},"Learn Kaabist",", at the bottom of the sidebar, is the page to come back to: how programs, jobs,\nattention and review fit together, the Get started list, and a card per concept with a link to\nits page and its guide. A page you open for the first time also shows a one-line note about what\nit is for until you choose ",[1059,1101,1102],{},"Got it",".",[1035,1105,1107],{"id":1106},"finding-your-way","Finding your way",[1026,1109,1110,1111,1114,1115,1118,1119,1122],{},"The ",[1059,1112,1113],{},"sidebar"," on the left starts with the organisation switcher: your organisation's name, and a\nmenu listing every organisation you belong to with your role in each, ",[1059,1116,1117],{},"Create organisation"," and\n",[1059,1120,1121],{},"Organisation settings",". Below a search button come the pages, in groups:",[1124,1125,1126,1139],"table",{},[1127,1128,1129],"thead",{},[1130,1131,1132,1136],"tr",{},[1133,1134,1135],"th",{},"Group",[1133,1137,1138],{},"Pages",[1140,1141,1142,1151,1159,1167],"tbody",{},[1130,1143,1144,1148],{},[1145,1146,1147],"td",{},"(top)",[1145,1149,1150],{},"Dashboard",[1130,1152,1153,1156],{},[1145,1154,1155],{},"Automation",[1145,1157,1158],{},"Programs, Jobs, Attention (with a count of parked jobs), Review, Sessions, Schedules",[1130,1160,1161,1164],{},[1145,1162,1163],{},"Integrations",[1145,1165,1166],{},"Webhooks, BYO providers, Site profiles, API explorer",[1130,1168,1169,1172],{},[1145,1170,1171],{},"Account",[1145,1173,1174,1175,1179,1180,1183],{},"Usage, Credits, Billing (marked ",[1176,1177,1178],"em",{},"Low"," or ",[1176,1181,1182],{},"Out"," when credits run short), Audit log, Settings",[1026,1185,1186,1187,1190,1191,1194,1195,1194,1197,1200,1201,1103],{},"Pages your role cannot use are not shown. Your e-mail at the bottom of the sidebar opens ",[1059,1188,1189],{},"Profile",",\n",[1059,1192,1193],{},"Security",", ",[1059,1196,411],{},[1059,1198,1199],{},"Keyboard shortcuts"," and ",[1059,1202,1203],{},"Sign out",[1026,1205,1110,1206,1209,1210,1213,1214,1217],{},[1059,1207,1208],{},"top bar"," shows where you are as breadcrumbs and, on the right, an ",[1059,1211,1212],{},"N live"," button whenever\nlive browsers are open (takeovers, builder browsers, pickers, agent browsers), each with ",[1059,1215,1216],{},"Close",";\nthen the keyboard-shortcuts button and the light\u002Fdark switch. Banners under it say when two-factor\nauthentication is required or credits are low.",[1026,1219,1220,1223,1224,1227,1228,1231,1232,1235,1236,1239,1240,1243,1244,1247,1248,1251,1252,1255,1256,1259,1260,1263,1264,1267],{},[1030,1221,1222],{},"Ctrl+K"," (",[1030,1225,1226],{},"⌘K",") opens the command menu. It lists what you can do on the page you are on first (on a\njob: run again, copy the ID, cancel), then opens a job or program when you paste its id, then\npages. ",[1030,1229,1230],{},"?"," lists every shortcut. ",[1030,1233,1234],{},"G"," then a letter jumps: ",[1030,1237,1238],{},"G H"," dashboard, ",[1030,1241,1242],{},"G J"," jobs, ",[1030,1245,1246],{},"G A","\nattention, ",[1030,1249,1250],{},"G R"," review, ",[1030,1253,1254],{},"G P"," programs, ",[1030,1257,1258],{},"G K"," API keys, ",[1030,1261,1262],{},"G M"," members, ",[1030,1265,1266],{},"G S"," security.",[1026,1269,1270],{},"The panel is dark by default; the switch in the top bar changes it and the choice is remembered.",[1035,1272,1274],{"id":1273},"working-through-a-list","Working through a list",[1026,1276,1277,1278,1103],{},"Every list in the panel (jobs, programs, review, attention, sessions, schedules, webhooks,\nsupport, the audit log, credits, keys, members) works the same way. Jobs are grouped by status, with\nwhat needs a person first: needs attention, awaiting input, running, queued, failed, succeeded,\ncanceled. Other lists group the same way where their records have a status. Click a group's header to fold it. Click a row to\nopen the record; rows without a page of their own (a key, a member) keep their actions in the\nright-click menu and in ",[1030,1279,1222],{},[1124,1281,1282,1292],{},[1127,1283,1284],{},[1130,1285,1286,1289],{},[1133,1287,1288],{},"Key",[1133,1290,1291],{},"Does",[1140,1293,1294,1309,1319,1333,1347,1357,1367],{},[1130,1295,1296,1306],{},[1145,1297,1298,1301,1302,1305],{},[1030,1299,1300],{},"J"," \u002F ",[1030,1303,1304],{},"K"," (or the arrows)",[1145,1307,1308],{},"Next \u002F previous row",[1130,1310,1311,1316],{},[1145,1312,1313],{},[1030,1314,1315],{},"Enter",[1145,1317,1318],{},"Open the highlighted job",[1130,1320,1321,1326],{},[1145,1322,1323],{},[1030,1324,1325],{},"X",[1145,1327,1328,1329,1332],{},"Select the highlighted job; ",[1030,1330,1331],{},"Shift"," with the arrows or a click extends the selection",[1130,1334,1335,1344],{},[1145,1336,1337,1223,1340,1343],{},[1030,1338,1339],{},"Ctrl+A",[1030,1341,1342],{},"⌘A",")",[1145,1345,1346],{},"Select every row",[1130,1348,1349,1354],{},[1145,1350,1351],{},[1030,1352,1353],{},"Esc",[1145,1355,1356],{},"Clear the selection",[1130,1358,1359,1364],{},[1145,1360,1361],{},[1030,1362,1363],{},"Shift+C",[1145,1365,1366],{},"Cancel the highlighted or selected jobs (asks first)",[1130,1368,1369,1377],{},[1145,1370,1371,1223,1374,1343],{},[1030,1372,1373],{},"Ctrl+.",[1030,1375,1376],{},"⌘.",[1145,1378,1379],{},"Copy their IDs",[1026,1381,1382,1383,1386,1387,1390,1391,1394],{},"Selecting rows shows a bar at the bottom with the actions for all of them. Right-click a row for the\nsame actions with their keys. A group with more jobs than it shows says so (",[1030,1384,1385],{},"25+","); ",[1059,1388,1389],{},"Show more"," at its end adds the next ones there. On a job's page,\n",[1030,1392,1393],{},"R"," runs it again, and the job's properties (status, program, tier, region, proxy, duration,\ncredits, tags) sit in a column on the right.",[1026,1396,1110,1397,1399,1400,1402],{},[1059,1398,1150],{}," greets you by name, names the organisation you are working in, and shows three\ntiles (jobs in the last 24 hours as succeeded, failed and in progress; jobs that need attention,\nsplit into waiting for a value and stopped; credits available and reserved), followed by\n",[1059,1401,1061],{}," cards: create an API key, try the API, invite your team, turn on two-factor.",[1035,1404,1406],{"id":1405},"signing-in","Signing in",[1026,1408,1409,1410,1413],{},"Create an account with your e-mail and a password (at least twelve characters, hard to guess), or\nwith GitHub or Google where your deployment offers them. A link sent to your address verifies it;\nyou can also sign in with an e-mailed link instead of a password. ",[1059,1411,1412],{},"Reset your password"," sends a\none-hour link.",[1026,1415,1416,1417,1420],{},"Owners and admins need an authenticator app (TOTP) to manage keys, members and billing, after a\nseven-day grace for a new organisation. ",[1059,1418,1419],{},"Settings → Security"," sets it up and shows ten backup\ncodes once. Creating, rotating or revoking a key and deleting the organisation also ask for your\npassword or a code when you last entered one more than fifteen minutes ago.",[1035,1422,1424],{"id":1423},"organisations-and-members","Organisations and members",[1026,1426,1427,1428,1431,1432,1386,1436,1439],{},"Every account starts with a personal organisation; create more from the switcher. ",[1059,1429,1430],{},"Settings →\nMembers"," changes roles (see ",[1043,1433,1435],{"href":1434},"\u002Fconcepts\u002Faccounts-and-roles","accounts and roles",[1059,1437,1438],{},"Invitations","\ne-mails a seven-day link to the address you enter, and only that address can accept.",[1035,1441,1443],{"id":1442},"api-keys-and-the-explorer","API keys and the explorer",[1026,1445,1446,1449,1450,1454,1455,1458],{},[1059,1447,1448],{},"Settings → API keys"," creates keys (shown once), rotates them with a grace period and revokes them\n(see ",[1043,1451,1453],{"href":1452},"\u002Fgetting-started\u002Fkeys-and-modes","keys and modes","). The ",[1059,1456,1457],{},"API explorer"," sends any public API\noperation with a key you paste; the key stays in that browser tab.",[1035,1460,223],{"id":224},[1026,1462,1463,1465,1466,1469,1470,1473,1474,1103],{},[1059,1464,223],{}," lists your programs with their latest version (and a ",[1176,1467,1468],{},"draft"," badge when one is being\nedited), aliases, last run, canary setting and how many fields are drifting. ",[1059,1471,1472],{},"New program"," starts\nblank, from a URL, from imported JSON or by recording. A program's page lists its versions, manages\nits aliases and its canary, and opens the ",[1043,1475,1477],{"href":1476},"\u002Fpanel\u002Fbuilder","program builder",[1035,1479,170],{"id":171},[1026,1481,1482,1484],{},[1059,1483,170],{}," lists every run, newest first, filtered by status, program, tag, mode, date, batch or\nschedule. The filters are in the address, so a filtered list is a link you can share. While a job\non the page has not finished, the list refreshes every ten seconds. A job's page shows its status\nand reason, the program version it ran, the tiers it went through, its region, proxy, duration and\ncredits, and tabs for:",[1486,1487,1488,1495,1500,1509,1515],"ul",{},[1489,1490,1491,1494],"li",{},[1059,1492,1493],{},"Result",": the data, the raw text when the program keeps it, and each warning with what it means;",[1489,1496,1497,1499],{},[1059,1498,536],{},": every step with its timing, screenshot and the stored page it left, which opens\nread-only with the fields that have ground truth outlined; healing and obstacles in detail;",[1489,1501,1502,1301,1505,1508],{},[1059,1503,1504],{},"Attention",[1059,1506,1507],{},"Input",": what a parked job is waiting for (below);",[1489,1510,1511,1514],{},[1059,1512,1513],{},"Error",": the code, whether retrying makes sense, and the diagnosis;",[1489,1516,1517,1200,1519,1522],{},[1059,1518,838],{},[1059,1520,1521],{},"Meta",": the job's history and its whole envelope.",[1026,1524,1525,1528,1529,1532,1533,1536],{},[1059,1526,1527],{},"Re-run"," creates a new job with the same version and inputs; secret inputs are never shown back,\nso you type them again. ",[1059,1530,1531],{},"curl"," copies the request that creates the job, with your key and secrets\nleft as placeholders. A batch's page shows its progress and can ",[1059,1534,1535],{},"cancel the remaining"," jobs.",[1035,1538,1504],{"id":1539},"attention",[1026,1541,1542,1544],{},[1059,1543,1504],{}," lists the jobs that stopped for a person, grouped under their reason (\"Waiting for a\nvalue\", \"Blocked by something on the page\", \"The page changed\", \"An unexpected page\", \"Signed out\",\n\"Unsure whether a side effect happened\") and program, the ones about to expire first. Each card\nshows the page the job stopped on as a screenshot on the left (click to enlarge) and, on the right,\nthe job, its program, when it expires, what happened, and:",[1486,1546,1547,1565,1587,1598],{},[1489,1548,1549,1550,1552,1553,1556,1557,1560,1561,1564],{},"the platform's ",[1059,1551,299],{},", each with ",[1059,1554,1555],{},"Apply"," and two checkboxes: ",[1059,1558,1559],{},"Promote"," publishes a new\nprogram version with the fix, ",[1059,1562,1563],{},"Remember for this site"," teaches every program of your\norganisation to close that overlay; with neither, the fix applies to this job only;",[1489,1566,1567,1570,1571,1575,1576,1194,1579,1582,1583,1586],{},[1059,1568,1569],{},"Take over"," in a live browser (",[1043,1572,1574],{"href":1573},"\u002Fpanel\u002Ftakeover","taking over a job","), ",[1059,1577,1578],{},"Skip step",[1059,1580,1581],{},"Retry\nfrom…"," a checkpoint (one before a completed side effect is refused), ",[1059,1584,1585],{},"Abort",";",[1489,1588,1589,1592,1593,1597],{},[1059,1590,1591],{},"Share resolve link",": a ",[1043,1594,1596],{"href":1595},"\u002Fguides\u002Fhosted-resolve","hosted page"," for someone without an account;",[1489,1599,1600,1601,1103],{},"for a job waiting for a value, the form to type it in and ",[1059,1602,1603],{},"Send",[1026,1605,1606,1607,1103],{},"When the same fix is proposed on several jobs of a program, a bar above them offers ",[1059,1608,1609],{},"Apply to\nall",[1035,1611,1613],{"id":1612},"review","Review",[1026,1615,1616,1618,1619,1622,1623,1194,1625,1627,1628,1631,1632,1635,1636,1200,1639,1642,1643,1646],{},[1059,1617,1613],{}," is the queue of changes the platform proposes: locators the healer relocated, overlays\nto remember, steps recorded during a takeover. The list shows each proposal's kind and target, the\nprogram and version, a confidence bar and its source, filtered by status, kind, source and program.\nA proposal's page shows the page before and after with the element outlined on each, the locators'\ndiff, the values either side read, the proposed change and the healer's evidence. ",[1059,1620,1621],{},"Approve (a)","\nshows what will change before you confirm, with ",[1059,1624,1559],{},[1059,1626,1563],{}," and notes;\n",[1059,1629,1630],{},"Reject (r)"," takes an optional reason; ",[1059,1633,1634],{},"Edit candidates"," corrects a relocation and checks it\nagainst the page the job failed on. ",[1030,1637,1638],{},"j",[1030,1640,1641],{},"k"," move through the queue. After a promotion, ",[1059,1644,1645],{},"Run\ncanary now"," test-runs the new version.",[1035,1648,41],{"id":42},[1026,1650,1651,1653,1654,1657,1658,1661,1662,1665],{},[1059,1652,41],{}," are signed-in browser states your programs start from (",[1030,1655,1656],{},"options.session","). Create one\nby pasting Playwright's ",[1030,1659,1660],{},"storageState()"," JSON, or by signing in by hand in a live browser and\npressing ",[1059,1663,1664],{},"Save session",": only the browser's cookies and storage are kept, sealed with your\norganisation's key, never shown again. A session's page verifies it now (a credit, five where a\nbrowser has to check), sets the refresh program that signs in again when it expires, and its\nconcurrency. A session a job holds cannot be deleted until the job ends.",[1035,1667,317],{"id":318},[1026,1669,1670,1672,1673,1676],{},[1059,1671,317],{}," run a program on a cron in a time zone you choose. The form is built from the\nprogram's own inputs and extract fields: pick the fields ",[1059,1674,1675],{},"change detection"," compares (none means\nthe whole result), what happens when a run is still going or fires were missed, and where runs are\nreported. The cron is described in words, with its next fires and your plan's shortest interval.\nA schedule's page lists its runs (each a job) and opens a changed run as sentences (\"price\nchanged to 12.5\"). Schedules pause when credits run out and resume when they arrive.",[1035,1678,104],{"id":105},[1026,1680,1681,1683,1684,1194,1687,1690,1691,1694,1695,1698,1699,1702,1703,1706],{},[1059,1682,104],{}," sends signed HTTPS calls when jobs, schedules, credits or programs change. Add an\nendpoint with the events it wants (",[1030,1685,1686],{},"*",[1030,1688,1689],{},"job.*"," or single types) and copy its signing secret: it is\nshown once. Paste a Discord or Slack webhook address and the endpoint's ",[1059,1692,1693],{},"format"," switches to a\nchat message, which those platforms accept; a mismatched one is pointed out and fixed in one click.\nAn endpoint's page sends a ",[1059,1696,1697],{},"test"," ping and shows the answer, lists deliveries with their answers,\nlatency and next retry, ",[1059,1700,1701],{},"resends"," one, ",[1059,1704,1705],{},"rotates"," the secret (the old one keeps signing for a\nday), and shows how to verify a signature in TypeScript, Python and Go.",[1035,1708,427],{"id":108},[1026,1710,1711,1713],{},[1059,1712,427],{}," are your own proxies, language models and captcha solvers. Choose what it is and\nwhose (a single proxy, a list, a vendor's gateway, OpenAI, 2Captcha, …) and fill in the vendor's\nform; Kaabist tests the provider before saving it, from the network your jobs leave from, and\nreports the exit address of a proxy. Make one the organisation's default for its kind. A provider a\ndefault or an active schedule still names cannot be deleted. BYO needs a paid plan and a verified\npayment method.",[1035,1715,1717],{"id":1716},"usage-credits-and-billing","Usage, credits and billing",[1026,1719,1720,1722,1723,1725,1726,1729,1730,1733],{},[1059,1721,404],{}," shows today's jobs, the last week's success rate, the credits available and what waits\nfor a person, then charts over 7, 30 or 90 days: credits by day and tier, finished jobs by outcome,\nthe success rate, browser seconds and proxy traffic, traffic by pool, and the programs and sites\nthat cost most, with the numbers grouped by day, program, tier or tag underneath. ",[1059,1724,390],{}," lists\nthe balance, the lots it is made of with their expiry, and the ledger, exportable as CSV.\n",[1059,1727,1728],{},"Billing"," (owners and admins) compares plans, buys plans and credit packs through Paddle's\ncheckout, sets ",[1059,1731,1732],{},"auto-recharge",", and opens Paddle's portal for the payment method and invoices.\nWhen credits run low or out, or a payment fails, every page says so.",[1035,1735,1737],{"id":1736},"audit-log-and-site-profiles","Audit log and site profiles",[1026,1739,1110,1740,1743,1744,1747,1748,1751,1752,1755],{},[1059,1741,1742],{},"audit log"," (owners and admins) lists who did what (keys, members, webhooks, schedules, BYO\nproviders, decisions, takeovers, billing changes) with filters, each entry's details, and CSV of\nthe loaded rows. When Kaabist's team changes something in your organisation (adds or adjusts\ncredits, disables or re-enables it, changes its limits, signs members out, revokes a key) or opens a\nread-only view of it to help you, the log shows it by ",[1059,1745,1746],{},"Kaabist staff",", in plain words such as\n\"Kaabist added 5,000 promotional credits (goodwill)\"; the ",[1176,1749,1750],{},"Actor"," filter can show only those rows.\nThese entries never carry an address or say which member of the team it was. ",[1059,1753,1754],{},"Site profiles"," shows what Kaabist has learned about a hostname: the tier it\nneeds and how sure that is, the obstacles and API endpoints it knows, when it last blocked.",[1035,1757,1759],{"id":1758},"worked-example","Worked example",[1026,1761,1762],{},"A first tour with a new organisation:",[1764,1765,1766,1780,1812,1828],"ol",{},[1489,1767,1768,1769,1771,1772,1775,1776,1779],{},"On the ",[1059,1770,1150],{},", follow ",[1059,1773,1774],{},"Create an API key"," and create an ",[1030,1777,1778],{},"sk_test_"," key; copy it now,\nit is shown once.",[1489,1781,1782,1783,1786,1787,1791,1792,1794,1795,1798,1799,1801,1802,1804,1805,1808,1809,1811],{},"Run a product page such as ",[1030,1784,1785],{},"https:\u002F\u002Fshop.example.com\u002Fp\u002F1"," with it (see\n",[1043,1788,1790],{"href":1789},"\u002Fgetting-started\u002Ffirst-job","your first job",").\nOpen ",[1059,1793,170],{},": the job is at the top, ",[1030,1796,1797],{},"succeeded",". Its ",[1059,1800,1493],{}," tab shows ",[1030,1803,612],{},"\n\"Kulaklık Klasik 101\" and ",[1030,1806,1807],{},"price"," 1337.4 TRY; ",[1059,1810,536],{}," shows the page it read.",[1489,1813,1814,1815,1818,1819,1822,1823,1825,1826,1103],{},"Open ",[1059,1816,1817],{},"Programs → New program",", choose ",[1059,1820,1821],{},"From a URL"," with\n",[1030,1824,1785],{},", and continue in the ",[1043,1827,1477],{"href":1476},[1489,1829,1830,1831,1833,1834,1836,1837,1839],{},"Press ",[1030,1832,1230],{}," to see the shortcuts, then ",[1030,1835,1246],{},": ",[1059,1838,1504],{}," is empty (\"Nothing needs you\") until a\njob parks.",[1035,1841,1843],{"id":1842},"pitfalls","Pitfalls",[1486,1845,1846,1852,1858,1864],{},[1489,1847,1848,1851],{},[1059,1849,1850],{},"Working in the wrong organisation."," The switcher at the top of the sidebar decides where keys,\nprograms and jobs go; the dashboard names the current one.",[1489,1853,1854,1857],{},[1059,1855,1856],{},"Losing a secret."," API keys and webhook signing secrets are shown once. Copy them before you\nclose the dialog, or rotate to get a new one.",[1489,1859,1860,1863],{},[1059,1861,1862],{},"Expecting secret inputs on Re-run."," They are never shown back; type them again.",[1489,1865,1866,1869],{},[1059,1867,1868],{},"Missing pages."," A page your role cannot use is hidden; ask an owner or admin for a different\nrole.",[1035,1871,155],{"id":1872},"reference",[1486,1874,1875,1885,1891],{},[1489,1876,1877,1880,1881],{},[1043,1878,1879],{"href":165},"API reference"," and the ",[1043,1882,1884],{"href":1883},"\u002Freference\u002Fapi\u002Fexplorer","API explorer reference",[1489,1886,1887],{},[1043,1888,1890],{"href":1889},"\u002Freference\u002Fcodes#roles","Roles and key scopes",[1489,1892,1893],{},[1043,1894,1896],{"href":1895},"\u002Freference\u002Fplans","Plans",{"title":1898,"searchDepth":1899,"depth":1899,"links":1900},"",3,[1901,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921],{"id":1037,"depth":1902,"text":1038},2,{"id":1054,"depth":1902,"text":5},{"id":1106,"depth":1902,"text":1107},{"id":1273,"depth":1902,"text":1274},{"id":1405,"depth":1902,"text":1406},{"id":1423,"depth":1902,"text":1424},{"id":1442,"depth":1902,"text":1443},{"id":224,"depth":1902,"text":223},{"id":171,"depth":1902,"text":170},{"id":1539,"depth":1902,"text":1504},{"id":1612,"depth":1902,"text":1613},{"id":42,"depth":1902,"text":41},{"id":318,"depth":1902,"text":317},{"id":105,"depth":1902,"text":104},{"id":108,"depth":1902,"text":427},{"id":1716,"depth":1902,"text":1717},{"id":1736,"depth":1902,"text":1737},{"id":1758,"depth":1902,"text":1759},{"id":1842,"depth":1902,"text":1843},{"id":1872,"depth":1902,"text":155},false,null,"Signing in, organisations, members, API keys, programs, jobs, sessions, schedules, webhooks, BYO providers, usage, billing and the audit log at app.kaab.ist.","md",{},{"title":27},{"title":1021,"description":1924},"4.panel\u002F01.index","Jky7949byJJUkgjl-wr4L5OJJTLaLsKAC-qZSY5OOvQ",[1932,1936],{"title":131,"path":1933,"stem":1934,"description":1935,"children":-1},"\u002Fguides\u002Fmcp","3.guides\u002F15.mcp","Connect Claude Code, Codex, Cursor or any MCP client to Kaabist and let it build, test and maintain programs in a real Kaabist browser.",{"title":140,"path":1476,"stem":1937,"description":1938,"children":-1},"4.panel\u002F02.builder","Build, test and publish programs in the panel: visually or in JSON, by recording, by picking on live pages and stored snapshots.",1793591010530]