@@ -1885,6 +1885,84 @@ class Particle {
18851885 } ) ;
18861886 }
18871887
1888+ /**
1889+ * Get product configuration
1890+ * @param {Object } options Options for this API call
1891+ * @param {String } options.product Config for this product ID or slug
1892+ * @param {String } options.auth Access Token
1893+ * @param {Object } [options.headers] Key/Value pairs like `{ 'X-FOO': 'foo', X-BAR: 'bar' }` to send as headers.
1894+ * @param {Object } [options.context] Request context
1895+ * @returns {Promise } A promise
1896+ */
1897+ getProductConfiguration ( { auth, product, headers, context } ) {
1898+ return this . get ( {
1899+ uri : `/v1/products/${ product } /config` ,
1900+ auth,
1901+ headers,
1902+ context
1903+ } ) ;
1904+ }
1905+
1906+ /**
1907+ * Get product configuration schema
1908+ * @param {Object } options Options for this API call
1909+ * @param {String } options.product Config for this product ID or slug
1910+ * @param {String } options.auth Access Token
1911+ * @param {Object } [options.headers] Key/Value pairs like `{ 'X-FOO': 'foo', X-BAR: 'bar' }` to send as headers.
1912+ * @param {Object } [options.context] Request context
1913+ * @returns {Promise } A promise
1914+ */
1915+ getProductConfigurationSchema ( { auth, product, headers = { } , context } ) {
1916+ headers . accept = 'application/schema+json' ;
1917+ return this . get ( {
1918+ uri : `/v1/products/${ product } /config` ,
1919+ auth,
1920+ headers,
1921+ context
1922+ } ) ;
1923+ }
1924+
1925+ /**
1926+ * Set product configuration
1927+ * @param {Object } options Options for this API call
1928+ * @param {String } options.product Config for this product ID or slug
1929+ * @param {String } options.auth Access Token
1930+ * @param {Object } opitons.config Product configuration to update
1931+ * @param {Object } [options.headers] Key/Value pairs like `{ 'X-FOO': 'foo', X-BAR: 'bar' }` to send as headers.
1932+ * @param {Object } [options.context] Request context
1933+ * @returns {Promise } A promise
1934+ */
1935+ setProductConfiguration ( { auth, product, config, headers, context } ) {
1936+ return this . put ( {
1937+ uri : `/v1/products/${ product } /config` ,
1938+ auth,
1939+ data : config ,
1940+ headers,
1941+ context
1942+ } ) ;
1943+ }
1944+
1945+ /**
1946+ * Set product configuration for a specific device within the product
1947+ * @param {Object } options Options for this API call
1948+ * @param {String } options.product Config for this product ID or slug
1949+ * @param {String } options.auth Access Token
1950+ * @param {Object } opitons.config Product configuration to update
1951+ * @param {String } options.deviceId Device ID to access
1952+ * @param {Object } [options.headers] Key/Value pairs like `{ 'X-FOO': 'foo', X-BAR: 'bar' }` to send as headers.
1953+ * @param {Object } [options.context] Request context
1954+ * @returns {Promise } A promise
1955+ */
1956+ setProductDeviceConfiguration ( { auth, product, deviceId, config, headers, context } ) {
1957+ return this . put ( {
1958+ uri : `/v1/products/${ product } /config/${ deviceId } ` ,
1959+ data : config ,
1960+ auth,
1961+ headers,
1962+ context
1963+ } ) ;
1964+ }
1965+
18881966 /**
18891967 * API URI to access a device
18901968 * @param {Object } options Options for this API call
0 commit comments