From d9d21ef8a5621416b5aa8429be9d87dbaede715b Mon Sep 17 00:00:00 2001 From: Jakob Date: Sun, 2 May 2021 12:53:07 +0200 Subject: [PATCH] Created Nvidia API (markdown) --- Nvidia-API.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 Nvidia-API.md diff --git a/Nvidia-API.md b/Nvidia-API.md new file mode 100644 index 0000000..980238b --- /dev/null +++ b/Nvidia-API.md @@ -0,0 +1,29 @@ +The [Nvidia driver download page](https://www.nvidia.com/Download/index.aspx) uses an API in the background to supply the correct drivers for the data entered. + +The base API url used for EnvyUpdate is `https://www.nvidia.com/Download/processDriver.aspx`. It works using regular HTTP GET requests. + +Accepted arguments which were found so far are: + +| API name | required? | default value | explanation | example | +|----------|-----------|---------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------| +| `psid` | yes | | Product Series ID | `psid=101` for GeForce 10 Series | +| `pfid` | yes | | Product ID | `psid=101&pfid=845` for GeForce GTX 1080 Ti | +| `osid` | yes | | Operating System ID | `osid=57` for Windows 10 64bit | +| `lid` | no | 1 | Language ID, defaults to English (US) | `lid=1` for English (US). | +| `dtcid` | no | 0 | Switch to use [DCH drivers](https://nvidia.custhelp.com/app/answers/detail/a_id/4777/~/nvidia-dch%2Fstandard-display-drivers-for-windows-10-faq) or not. Defaults to non-DCH. | `dtcid=1` for DCH drivers | + +The API uses multiple different IDs to work, which are mostly arbitrary. These can be found using a different API URL. + +* List all GPUs with their `psid` (the value in `ParentID`) and theit `pfid` (the value in `Value`): https://www.nvidia.com/Download/API/lookupValueSearch.aspx?TypeID=3 +* List all operating systems and their ID (`Value`): https://www.nvidia.com/Download/API/lookupValueSearch.aspx?TypeID=4 +* List all languages and their ID (`Value`): https://www.nvidia.com/Download/API/lookupValueSearch.aspx?TypeID=5 + +A complete request URL with all parameters would be in this form: + +`https://www.nvidia.com/Download/processDriver.aspx?psid=&pfid=&osid=&lid=&dtcid=<0 or 1>` + +An example URL for the most recent driver for the GeForce 1080 Ti for Windows 10 x64 using UK English and DCH would be: + +`https://www.nvidia.com/Download/processDriver.aspx?psid=101&pfid=845&osid=57&lid=2&dtcid=1` + +**Keep in mind that this API returns a URL to the download page of the most recent driver, NOT a direct download link!** \ No newline at end of file