This document is a specification of the Software Quality Metrics (SQM) Client-to-Service Protocol Version 1 which is used to send software instrumentation metrics to the SQM service and by the client to download client-specific control data. The protocol allows applications and operating system components to collect and send instrumentation metrics to a hosted service over HTTP/HTTPS.
Data upload can also be transmitted through a customer-hosted SQM proxy to the SQM service. This proxy transmits protocol messages on behalf of a client in environments in which the client cannot access the SQM service.
Sections 1.8, 2, and 3 of this specification are normative and can contain the terms MAY, SHOULD, MUST, MUST NOT, and SHOULD NOT as defined in RFC 2119. Sections 1.5 and 1.9 are also normative but cannot contain those terms. All other sections and examples in this specification are informative.