Browse Source
Define JSON Schema for user agent payload (#3378)
Define JSON Schema for user agent payload (#3378)
- Created a JSON Schema that defines the user agent JSON payload format.pull/3391/head

committed by
GitHub

No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 95 additions and 1 deletions
@ -0,0 +1,94 @@ |
|||
{ |
|||
// This is the JSON Schema that defines the format of the TDS USERAGENT |
|||
// Feature Extension payload (version 1) sent to the server during login. |
|||
// |
|||
// Feature Extension Name: USERAGENT |
|||
// Feature Extension Version: 1 |
|||
// Schema Version: 1 |
|||
// |
|||
// The design document for version 1 is here: |
|||
// |
|||
// https://microsoft.sharepoint-df.com/:w:/t/sqldevx/ERIWTt0zlCxLroNHyaPlKYwBI_LNSff6iy_wXZ8xX6nctQ?e=iP8q75 |
|||
|
|||
"$schema": "https://json-schema.org/draft/2020-12/schema", |
|||
"$id": "urn:microsoft:mssql:user-agent:v1", |
|||
"title": "Driver User Agent V1", |
|||
"description": "The user agent payload sent by the driver during login.", |
|||
|
|||
"type": "object", |
|||
"properties": |
|||
{ |
|||
"driver": |
|||
{ |
|||
"enum": ["MS-JDBC", "MS-MDS", "MS-ODBC", "MS-OLEDB", "MS-PHP", "MS-PYTHON"], |
|||
"description": "The type of driver." |
|||
}, |
|||
"version": |
|||
{ |
|||
"type": "string", |
|||
"description": "The version of the driver, as a semantic version.", |
|||
// See: |
|||
// |
|||
// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string |
|||
// |
|||
"pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$" |
|||
}, |
|||
"os": |
|||
{ |
|||
"type": "object", |
|||
"description": "Information about the operating system.", |
|||
"properties": |
|||
{ |
|||
"type": |
|||
{ |
|||
"enum": ["Windows", "Linux", "macOS", "FreeBSD", "Android", "Unknown"], |
|||
"description": "The type of operating system." |
|||
}, |
|||
"details": |
|||
{ |
|||
"type": "string", |
|||
"description": "Extended details of the operating system." |
|||
} |
|||
}, |
|||
"additionalProperties": false, |
|||
"required": ["type", "details"] |
|||
}, |
|||
"arch": |
|||
{ |
|||
"type": "string", |
|||
"description": "The architecture of the driver process." |
|||
}, |
|||
"runtime": |
|||
{ |
|||
"type": "string", |
|||
"description": "The runtime environment of the driver." |
|||
} |
|||
}, |
|||
"additionalProperties": false, |
|||
"required": ["driver", "version", "os", "arch", "runtime"], |
|||
"examples": |
|||
[ |
|||
{ |
|||
"driver": "MS-MDS", |
|||
"version": "6.0.2", |
|||
"os": |
|||
{ |
|||
"type": "Linux", |
|||
"details": "Debian GNU Linux 12.2 Bookworm" |
|||
}, |
|||
"arch": "amd64", |
|||
"runtime": ".NET 9.0.3" |
|||
}, |
|||
{ |
|||
"driver": "MS-JDBC", |
|||
"version": "11.2.0", |
|||
"os": |
|||
{ |
|||
"type": "Windows", |
|||
"details": "Windows 10 Pro 22H2" |
|||
}, |
|||
"arch": "x64", |
|||
"runtime": "Java 17.0.8+7-LTS" |
|||
} |
|||
] |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue