Your reliable tool for approving and testing Windows updates.
Process Windows KBs, capture titles and known-issue hints, and persist results.
The KBApS API lets you send one or more Windows KB identifiers for processing. The service follows Microsoft Support redirects, extracts the page title, checks for “Known issues” sections heuristically, and stores the results for your account.
https://www.kbaps.com
Authorization: Bearer <token_id>.<secret>
Content-Type: application/json
Personal Access Tokens (PATs) are generated in the web UI (login required) and can be revoked at any time.
Pass your Personal Access Token (PAT) via the HTTP header:
Authorization: Bearer <token_id>.<secret>
To create a token, sign in to the site and open Generate Token. Manage and revoke tokens at My Tokens. If you don’t have an account yet, log in.
/api/kb/api.php
Requires: kb:writeURL | https://www.kbaps.com/api/kb/api.php |
---|---|
Auth | Bearer token (PAT) with scope kb:write |
Body | {"kb_list": "KB5056579,KB5050575"} or {"kb_list": ["KB5056579","KB5050575"]} |
200 | All KBs processed successfully |
207 | Partial success; see errors array |
401/403 | Not authenticated / insufficient scope |
{
"kb_list": "KB5056579,KB5050575"
}
{
"message": "KBs processed successfully",
"processed_kbs": [
{
"article_id": "KB5056579",
"display_name": "April 25, 2025—KB5056579 Cumulative Update ...",
"url_status": "ok",
"http_code": 200,
"final_url": "https://support.microsoft.com/...",
"problema_existente": 1,
"descricao_problema": "Known issues ..."
}
]
}
Notes: url_status
reflects the final HTTP status category (ok
, not found
, server error
). We also return the raw http_code
and final_url
for diagnostics.
$token = "TOKEN_ID.SECRET"
$apiUrl = "https://www.kbaps.com/api/kb/api.php"
$kbs = Get-HotFix | ForEach-Object { $_.HotFixID }
$body = @{ kb_list = ($kbs -join ",") } | ConvertTo-Json -Compress
$headers = @{
"Authorization" = "Bearer $token"
"Content-Type" = "application/json"
}
$response = Invoke-RestMethod -Uri $apiUrl -Method POST -Headers $headers -Body $body
$response | ConvertTo-Json -Depth 5
curl -X POST "https://www.kbaps.com/api/kb/api.php" \
-H "Authorization: Bearer TOKEN_ID.SECRET" \
-H "Content-Type: application/json" \
-d '{"kb_list":"KB5056579,KB5050575"}'
import requests, json
token = "TOKEN_ID.SECRET"
api = "https://www.kbaps.com/api/kb/api.php"
payload = {"kb_list": ["KB5056579", "KB5050575"]}
headers = {"Authorization": f"Bearer {token}", "Content-Type": "application/json"}
r = requests.post(api, headers=headers, data=json.dumps(payload), timeout=60)
print(r.status_code)
print(r.json())
<?php
$token = "TOKEN_ID.SECRET";
$api = "https://www.kbaps.com/api/kb/api.php";
$payload = json_encode(["kb_list" => "KB5056579,KB5050575"], JSON_UNESCAPED_UNICODE);
$ch = curl_init($api);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer {$token}",
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS => $payload,
CURLOPT_TIMEOUT => 60,
]);
$resp = curl_exec($ch);
if ($err = curl_error($ch)) { die("cURL error: $err"); }
curl_close($ch);
header("Content-Type: application/json; charset=utf-8");
echo $resp;
401 | Missing or invalid Bearer token. Send Authorization: Bearer <token> . |
---|---|
403 | Insufficient scope. Token must include kb:write for processing. |
400 | Invalid body (e.g., kb_list missing or wrong format). |
207 | Partial processing: some KBs failed (see errors array). |
500 | Internal error. Check server logs. |
ttl_days
) and revoke unused tokens.Token UI: Generate Token • My Tokens
Help improve the system that simplifies Windows updates for businesses! Your donation supports innovation. [Donate Now]