API
Verification API for AI agents
This API is designed for AI agents, not browsers. It is a verification service, not another way to browse the directory.
Before writing a registry value across a fleet, an agent can verify whether it is valid for the target OS, whether an Intune equivalent exists, and which scope applies. The value is not merely knowing Microsoft’s public documentation; models already know much of it. The value is proving an answer with provenance, a source version and a freshness date.
Founding rule
Never fill an absence with an assumption.
A compatibility request for 22H2 without an OS family does not produce a verdict. 22H2 identifies build 10.0.19045 on Windows 10 and build 10.0.22621 on Windows 11. The API returns verdict: "unknown", both candidates, and how the agent can disambiguate the request.
Measured coverage
Dataset 6a69d203, measured on July 29, 2026. These are coverage boundaries, not estimates.
| Indicator | Value |
|---|---|
| settings per language | 9,657 (2 languages) |
| registry key + value pairs per language | 16,497 |
| Intune (CSP) mappings per language | 2,458 (25.5 %) |
| settings with no Intune equivalent | 7,199 |
| active sources | 14 / 16 declared |
Endpoints
Base URL: https://api.gporais.com
| Method | Path | Verification performed |
|---|---|---|
POST | /v1/resolve | Registry key to setting, with a compatibility verdict |
POST | /v1/csp | OMA-URI to setting and registry key |
POST | /v1/search | Text query to settings |
GET | /v1/setting/{slug} | Complete setting record |
GET | /v1/health | Service status and dataset version; no authentication |
Response envelope
Every authenticated response carries the same six top-level fields so an agent can distinguish evidence, inference and uncertainty.
| Field | Guarantee |
|---|---|
query | The normalized request the API actually evaluated. |
result | Matches, the requested record, or a reason when no mapping exists. |
confidence | official means Microsoft states the mapping; derived means GPORais inferred it; none means no Intune mapping exists. none is an answer, not an error, and always comes with result.reason. |
provenance | The source, its version and the Microsoft Learn URL when one exists. |
dataset | The dataset version and generation date on every response. This is the freshness evidence. |
warnings | Facts the API noticed without deciding in place of the agent. |
result.compatibility
Compatibility has four explicit verdicts. None is a guess.
| Verdict | Meaning |
|---|---|
supported | The target build meets the documented minimum. |
unsupported | The target build does not meet the documented minimum. |
unverified | A minOs value exists, but it contains no readable build number. |
unknown | The target OS is missing, unrecognized or ambiguously labelled. |
requiredBuildAlternatives — requiredBuildAlternatives appears only when Microsoft lists several minimum builds.
Examples
The response excerpts below come from production dataset 6a69d203. Long arrays are shortened by omitting entries; shown fields and values are unchanged.
Authentication
Send the access key in the X-API-Key header. The health endpoint is public.
PowerShell
Invoke-RestMethod -Uri 'https://api.gporais.com/v1/resolve' -Method Post -Headers @{'X-API-Key'='YOUR_API_KEY'; 'Content-Type'='application/json'} -Body '{"key":"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Uninstall","value":"noaddfromcdorfloppy","lang":"en-US","targetOs":"Windows 10 22H2"}' curl
curl -X POST 'https://api.gporais.com/v1/resolve' -H 'X-API-Key: YOUR_API_KEY' -H 'Content-Type: application/json' --data '{"key":"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Uninstall","value":"noaddfromcdorfloppy","lang":"en-US","targetOs":"Windows 10 22H2"}' Registry resolution with a supported verdict
Put the exact registry path in the request body; the API normalizes the key, extracts the hive, and shows that normalized query in `query`.
Request
{
"key": "HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Uninstall",
"value": "noaddfromcdorfloppy",
"lang": "en-US",
"targetOs": "Windows 10 22H2"
} PowerShell
Invoke-RestMethod -Uri 'https://api.gporais.com/v1/resolve' -Method Post -Headers @{'X-API-Key'='YOUR_API_KEY'; 'Content-Type'='application/json'} -Body '{"key":"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Uninstall","value":"noaddfromcdorfloppy","lang":"en-US","targetOs":"Windows 10 22H2"}' curl
curl -X POST 'https://api.gporais.com/v1/resolve' -H 'X-API-Key: YOUR_API_KEY' -H 'Content-Type: application/json' --data '{"key":"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Uninstall","value":"noaddfromcdorfloppy","lang":"en-US","targetOs":"Windows 10 22H2"}' Response excerpt
{
"query": {
"key": "software\\microsoft\\windows\\currentversion\\policies\\uninstall",
"value": "noaddfromcdorfloppy",
"lang": "en-US",
"hive": "HKCU",
"targetOs": "Windows 10 22H2"
},
"result": {
"matches": [
{
"slug": "addremoveprograms-noaddfromcdorfloppy",
"lang": "en-US",
"name": "NoAddFromCDorFloppy",
"displayName": "Hide the \"Add a program from CD-ROM or floppy disk\" option",
"class": "User",
"registryKey": "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Uninstall",
"valueName": "NoAddFromCDorFloppy",
"source": "windows",
"sourceVersion": "Windows 11 25H2",
"confidence": "official"
}
],
"compatibility": {
"verdict": "supported",
"reason": "target build 10.0.19045 (Windows 10 22H2) meets minimum 10.0.19041.1202",
"targetBuild": "10.0.19045",
"requiredBuild": "10.0.19041.1202",
"requiredBuildAlternatives": [
"10.0.19041.1202",
"10.0.19042.1202",
"10.0.19043.1202",
"10.0.22000"
]
}
},
"confidence": "official",
"provenance": {
"source": "windows",
"sourceVersion": "Windows 11 25H2"
},
"dataset": {
"version": "6a69d203",
"generatedAt": "2026-07-29T10:12:19Z"
},
"warnings": []
} Ambiguous OS label: no invented verdict
With targetOs set only to 22H2, the response identifies the two possible Windows families and explains how to decide.
Response excerpt
{
"query": {
"key": "software\\microsoft\\windows\\currentversion\\policies\\uninstall",
"value": "noaddfromcdorfloppy",
"lang": "en-US",
"hive": "HKCU",
"targetOs": "22H2"
},
"result": {
"compatibility": {
"verdict": "unknown",
"reason": "version 22H2 ambigue : Windows 10 (10.0.19045) ou Windows 11 (10.0.22621). Precisez la famille (ex. \"Windows 10 22H2\") ou fournissez le numero de build."
}
},
"confidence": "official",
"dataset": {
"version": "6a69d203",
"generatedAt": "2026-07-29T10:12:19Z"
},
"warnings": []
} Two settings write the same registry pair
The API returns both matches and warns the agent instead of selecting one on its behalf. This preserved ambiguity is evidence, not a weakness.
Response excerpt
{
"query": {
"key": "software\\policies\\microsoft\\windows\\windowsupdate\\au",
"value": "noautoupdate",
"lang": "en-US",
"hive": "HKLM",
"targetOs": null
},
"result": {
"matches": [
{
"slug": "wuau-autoupdatecfg",
"displayName": "Configure Automatic Updates",
"registryKey": "Software\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU",
"valueName": "NoAutoUpdate",
"sourceVersion": "Windows 11 25H2",
"confidence": "official"
},
{
"slug": "icm-internetmanagement-restrictcommunication-2",
"displayName": "Restrict Internet communication",
"registryKey": "Software\\Policies\\Microsoft\\InternetManagement",
"valueName": "RestrictCommunication",
"sourceVersion": "Windows 11 25H2",
"confidence": "official"
}
],
"compatibility": {
"verdict": "unknown",
"reason": "aucun OS cible fourni"
}
},
"confidence": "official",
"dataset": {
"version": "6a69d203",
"generatedAt": "2026-07-29T10:12:19Z"
},
"warnings": [
"The registry pair HKLM\\software\\policies\\microsoft\\windows\\windowsupdate\\au\\noautoupdate is written by 2 parameters: wuau-autoupdatecfg, icm-internetmanagement-restrictcommunication-2. Returning all matches and letting the agent choose."
]
} Resolve an OMA-URI
The CSP endpoint returns the corresponding setting and registry write. This is an excerpt of the recorded production response.
Request
{
"omaUri": "./device/vendor/msft/policy/config/admx_externalboot/portableoperatingsystem_hibernate",
"lang": "en-US",
"scope": "Device"
} Response excerpt
{
"query": {
"omaUri": "./device/vendor/msft/policy/config/admx_externalboot/portableoperatingsystem_hibernate",
"lang": "en-US",
"scope": "Device"
},
"result": {
"matches": [
{
"displayName": "Allow hibernate (S4) when starting from a Windows To Go workspace",
"class": "Machine",
"registryKey": "System\\CurrentControlSet\\Policies\\Microsoft\\PortableOperatingSystem",
"valueName": "Hibernate",
"source": "windows",
"sourceVersion": "Windows 11 25H2",
"confidence": "official",
"csp": {
"scope": "Device",
"minOs": "Windows 10, version 2004 with KB5005101 [10.0.19041.1202] and later | Windows 10, version 20H2 with KB5005101 [10.0.19042.1202] and later | Windows 10, version 21H1 with KB5005101 [10.0.19043.1202] and later | Windows 11, version 21H2 [10.0.22000] and later"
}
}
]
},
"confidence": "official",
"provenance": {
"source": "windows",
"sourceVersion": "Windows 11 25H2"
},
"dataset": {
"version": "6a69d203",
"generatedAt": "2026-07-29T10:12:19Z"
},
"warnings": []
} Search for settings
Use a setting token that returns results, such as DisableSearchHistory. This example shows the request only because the supplied recorded search response used a different query that returned no result.
Request
{
"q": "DisableSearchHistory",
"lang": "en-US",
"limit": 3
} Access, limits and documented boundaries
| Aspect | Rule |
|---|---|
| Authentication | Authentication uses the X-API-Key header. GET /v1/health remains public. |
| Rate limiting | The limit is 120 requests per minute per IP address. |
| Errors | Errors use the RFC 9457 problem details format. |
| Requesting a key | There is no self-service signup. Request access through the existing contact details on the About page. No additional form or personal-data collection is used. |
| Billing | There is no billing at this time. |
| Coverage | Intune coverage is 25.5%: 2,458 mappings per language. This is a documented boundary. For 7,199 settings, answering “no Intune equivalent exists, and here is why” is the service being delivered. |
| Independence | GPORais is an independent technical resource and is not affiliated with or endorsed by Microsoft. |