{"_id":"@beardon/woocommerce-rest-api","_rev":"4-a5a0e6e15d5e6bdb481936787daf3e12","name":"@beardon/woocommerce-rest-api","dist-tags":{"latest":"1.0.5"},"versions":{"1.0.2":{"name":"@beardon/woocommerce-rest-api","version":"1.0.2","keywords":["wordpress","woocommerce","rest","promise","node"],"author":{"name":"Automattic"},"license":"UNLICENSED","_id":"@beardon/woocommerce-rest-api@1.0.2","maintainers":[{"name":"beardon","email":"developer@beardon.com"}],"contributors":[{"url":"https://beardon.com","name":"Aaron Bean","email":"aaron.bean@beardon.com"}],"homepage":"https://github.com/beardon/woocommerce-rest-api-js-lib","bugs":{"url":"https://github.com/beardon/woocommerce-rest-api-js/issues"},"dist":{"shasum":"bac90311311051b523338fbca65c369d2c215fce","tarball":"https://registry.npmjs.org/@beardon/woocommerce-rest-api/-/woocommerce-rest-api-1.0.2.tgz","fileCount":3,"integrity":"sha512-0tSFCFyepSF8dPwavpca8bZPo8zv5RXLb0iwB3mnvaCB8fV7tZI/XsPvQEOo0GXdz+bcAQ2y4cZ1RJQRCwPhrw==","signatures":[{"sig":"MEYCIQD6zKgL6sdHUFpjyMd0yk+0aBRy+OB3hzqAW86wWzF0IAIhAJNEuK3ClJsgx15JNljYgRneCzK36+fn10x+mESrBrdI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16925},"main":"index.js","gitHead":"aa986a099c35da60ef403d28c7a41298a01d77a2","_npmUser":{"name":"beardon","email":"developer@beardon.com"},"repository":{"url":"git+https://github.com/beardon/woocommerce-rest-api-js.git","type":"git"},"_npmVersion":"10.7.0","description":"WooCommerce REST API - JavaScript Library","directories":{},"_nodeVersion":"20.14.0","dependencies":{"axios":"^1.7.9","url-parse":"^1.5.10","oauth-1.0a":"^2.2.6","create-hmac":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/woocommerce-rest-api_1.0.2_1738953927470_0.7794739068978456","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@beardon/woocommerce-rest-api","version":"1.0.3","keywords":["wordpress","woocommerce","rest","promise","node"],"author":{"name":"Automattic"},"license":"UNLICENSED","_id":"@beardon/woocommerce-rest-api@1.0.3","maintainers":[{"name":"beardon","email":"developer@beardon.com"}],"contributors":[{"url":"https://beardon.com","name":"Aaron Bean","email":"aaron.bean@beardon.com"}],"homepage":"https://github.com/beardon/woocommerce-rest-api-js-lib","bugs":{"url":"https://github.com/beardon/woocommerce-rest-api-js/issues"},"dist":{"shasum":"2580952273778f576874ef7ca5eb4b4cd770b706","tarball":"https://registry.npmjs.org/@beardon/woocommerce-rest-api/-/woocommerce-rest-api-1.0.3.tgz","fileCount":3,"integrity":"sha512-wSk8JUaYlJUA9I80kWGTNj80H0CQ3q2FzgDuhf2SsymJ/gc/6laH+rSF57G9b9jWISJjhNMha+me1F+E+bp1FQ==","signatures":[{"sig":"MEYCIQDm5/rQCr3lQHr20Cu8TD5hP3Jc3Urlyc57B/ItTe15MgIhAPla8RCxQeEFMvDpYuD+s5zOWwzBuf02lyWUb5XQWvLe","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16968},"main":"index.js","gitHead":"bb664ded5d18d9da1683f7d533983aa5473f5881","_npmUser":{"name":"beardon","email":"developer@beardon.com"},"repository":{"url":"git+https://github.com/beardon/woocommerce-rest-api-js.git","type":"git"},"_npmVersion":"10.7.0","description":"WooCommerce REST API - JavaScript Library","directories":{},"_nodeVersion":"20.14.0","dependencies":{"axios":"^1.7.9","url-parse":"^1.5.10","oauth-1.0a":"^2.2.6","create-hmac":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/woocommerce-rest-api_1.0.3_1738954554582_0.879672811706063","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@beardon/woocommerce-rest-api","version":"1.0.4","keywords":["wordpress","woocommerce","rest","promise","node"],"author":{"name":"Automattic"},"license":"UNLICENSED","_id":"@beardon/woocommerce-rest-api@1.0.4","maintainers":[{"name":"beardon","email":"developer@beardon.com"}],"contributors":[{"url":"https://beardon.com","name":"Aaron Bean","email":"aaron.bean@beardon.com"}],"homepage":"https://github.com/beardon/woocommerce-rest-api-js-lib","bugs":{"url":"https://github.com/beardon/woocommerce-rest-api-js/issues"},"dist":{"shasum":"9663b9504c6a1094862da84c65b72af4d9bbea04","tarball":"https://registry.npmjs.org/@beardon/woocommerce-rest-api/-/woocommerce-rest-api-1.0.4.tgz","fileCount":3,"integrity":"sha512-PQDV04YNZ03hHJMYLSWw2ioXkntYfGdTAyGGCTMcUUpDg0/4l1Cd/XK+pk+0E5RZi7e6qtq66bb8CV/m5WUNhQ==","signatures":[{"sig":"MEUCIQCVViXw+X0hXS/9ib0O1CnOaNlbrlTE4lgSyfqWXLqu+AIgS5qtdneEybZSNqAzZlSWQQngFXHREXGjvKJ/8w+KFB8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17999},"main":"index.js","gitHead":"f3dd950ca573e8d49d819b60c068d2d3c47c4a2a","_npmUser":{"name":"beardon","email":"developer@beardon.com"},"repository":{"url":"git+https://github.com/beardon/woocommerce-rest-api-js.git","type":"git"},"_npmVersion":"10.7.0","description":"WooCommerce REST API - JavaScript Library","directories":{},"_nodeVersion":"20.14.0","dependencies":{"axios":"^1.8.2","url-parse":"^1.5.10","oauth-1.0a":"^2.2.6","create-hmac":"^1.1.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/woocommerce-rest-api_1.0.4_1741368100295_0.5340416026073251","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@beardon/woocommerce-rest-api","version":"1.0.5","description":"WooCommerce REST API - JavaScript Library","author":{"name":"Automattic"},"contributors":[{"name":"Aaron Bean","email":"aaron.bean@beardon.com","url":"https://beardon.com"}],"license":"UNLICENSED","keywords":["wordpress","woocommerce","rest","promise","node"],"homepage":"https://github.com/beardon/woocommerce-rest-api-js-lib","repository":{"type":"git","url":"git+https://github.com/beardon/woocommerce-rest-api-js.git"},"bugs":{"url":"https://github.com/beardon/woocommerce-rest-api-js/issues"},"main":"index.js","dependencies":{"axios":"^1.14.0","create-hmac":"^1.1.7","oauth-1.0a":"^2.2.6","url-parse":"^1.5.10"},"gitHead":"2a6532a4268f68b3368c99972bf739cb11a53298","_id":"@beardon/woocommerce-rest-api@1.0.5","_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-OPSUOEZcvrtnSb03oA3JsOLPPQ7KSVNEbsDGmeHnn+1jf2BuR1bs/6IXrpZFIcMPm4H+Pls2v0B40Hm7fAnIlA==","shasum":"acd0bc6865f1acde5d1614699be553446be95d5b","tarball":"https://registry.npmjs.org/@beardon/woocommerce-rest-api/-/woocommerce-rest-api-1.0.5.tgz","fileCount":3,"unpackedSize":18000,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCYBEqQbkxmgPnPPOecraaanenUoPh9Tl0UkeDLYd7u7wIgd/FamR/RF2XMnWDKHZv3qjPr8rDcRDgSxmMfVp7w/qA="}]},"_npmUser":{"name":"beardon","email":"developer@beardon.com"},"directories":{},"maintainers":[{"name":"beardon","email":"developer@beardon.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/woocommerce-rest-api_1.0.5_1774977448658_0.1889192129354993"},"_hasShrinkwrap":false}},"time":{"created":"2025-02-07T18:45:27.376Z","modified":"2026-03-31T17:17:28.929Z","1.0.2":"2025-02-07T18:45:27.639Z","1.0.3":"2025-02-07T18:55:54.761Z","1.0.4":"2025-03-07T17:21:40.484Z","1.0.5":"2026-03-31T17:17:28.834Z"},"bugs":{"url":"https://github.com/beardon/woocommerce-rest-api-js/issues"},"author":{"name":"Automattic"},"license":"UNLICENSED","homepage":"https://github.com/beardon/woocommerce-rest-api-js-lib","keywords":["wordpress","woocommerce","rest","promise","node"],"repository":{"type":"git","url":"git+https://github.com/beardon/woocommerce-rest-api-js.git"},"description":"WooCommerce REST API - JavaScript Library","contributors":[{"name":"Aaron Bean","email":"aaron.bean@beardon.com","url":"https://beardon.com"}],"maintainers":[{"name":"beardon","email":"developer@beardon.com"}],"readme":"# WooCommerce REST API - JavaScript Library\n\nNew JavaScript library for WooCommerce REST API, supports CommonJS (CJS) and Embedded System Module (ESM).\nThis is a replacement for the now-defunct official [woocommerce-rest-api NPM](https://www.npmjs.com/package/@woocommerce/woocommerce-rest-api) and [GitHub repository](https://github.com/woocommerce/woocommerce-rest-api-js). \n\nRequests are made with [Axios library](https://github.com/axios/axios) with [support to promises](https://github.com/axios/axios#promises).\n\n## Installation\n\n```\nnpm install --save @beardon/woocommerce-rest-api\n```\n\n## Getting started\n\nGenerate API credentials (Consumer Key & Consumer Secret) following this instructions <http://docs.woocommerce.com/document/woocommerce-rest-api/>\n.\n\nCheck out the WooCommerce API endpoints and data that can be manipulated in <http://woocommerce.github.io/woocommerce-rest-api-docs/>.\n\n## Setup\n\n```js\nconst { WooCommerceRestApi } = require('@beardon/woocommerce-rest-api');\n\nconst api = new WooCommerceRestApi({\n  url: 'http://example.com',\n  consumerKey: 'ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',\n  consumerSecret: 'cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',\n  version: 'wc/v3',\n});\n```\n\n### Options\n\n| Option            | Type      | Required | Description                                                                                                         |\n|-------------------|-----------|----------|---------------------------------------------------------------------------------------------------------------------|\n| `url`             | `String`  | yes      | Your Store URL, example: http://woo.dev/                                                                            |\n| `consumerKey`     | `String`  | yes      | Your API consumer key                                                                                               |\n| `consumerSecret`  | `String`  | yes      | Your API consumer secret                                                                                            |\n| `wpAPIPrefix`     | `String`  | no       | Custom WP REST API URL prefix, used to support custom prefixes created with the `rest_url_prefix` filter            |\n| `version`         | `String`  | no       | API version, default is `v3`                                                                                        |\n| `encoding`        | `String`  | no       | Encoding, default is 'utf-8'                                                                                        |\n| `queryStringAuth` | `Bool`    | no       | When `true` and using under HTTPS force Basic Authentication as query string, default is `false`                    |\n| `port`            | `string`  | no       | Provide support for URLs with ports, eg: `8080`                                                                     |\n| `timeout`         | `Integer` | no       | Define the request timeout                                                                                          |\n| `axiosConfig`     | `Object`  | no       | Define the custom [Axios config](https://github.com/axios/axios#request-config), also override this library options |\n\n## Methods\n\n### GET\n\n- `.get(endpoint)`\n- `.get(endpoint, params)`\n\n| Params     | Type     | Description                                                   |\n|------------|----------|---------------------------------------------------------------|\n| `endpoint` | `String` | WooCommerce API endpoint, example: `customers` or `orders/12` |\n| `params`   | `Object` | Query strings params, example: `{ per_page: 20 }`             |\n\n### POST\n\n- `.post(endpoint, data)`\n- `.post(endpoint, data, params)`\n\n| Params     | Type     | Description                                                 |\n|------------|----------|-------------------------------------------------------------|\n| `endpoint` | `String` | WooCommerce API endpoint, example: `customers` or `orders`  |\n| `data`     | `Object` | JS object to be converted into JSON and sent in the request |\n| `params`   | `Object` | Query strings params                                        |\n\n### PUT\n\n- `.put(endpoint, data)`\n- `.put(endpoint, data, params)`\n\n| Params     | Type     | Description                                                       |\n|------------|----------|-------------------------------------------------------------------|\n| `endpoint` | `String` | WooCommerce API endpoint, example: `customers/1` or `orders/1234` |\n| `data`     | `Object` | JS object to be converted into JSON and sent in the request       |\n| `params`   | `Object` | Query strings params                                              |\n\n### DELETE\n\n- `.delete(endpoint)`\n- `.delete(endpoint, params)`\n\n| Params     | Type     | Description                                                     |\n|------------|----------|-----------------------------------------------------------------|\n| `endpoint` | `String` | WooCommerce API endpoint, example: `customers/2` or `orders/12` |\n| `params`   | `Object` | Query strings params, example: `{ force: true }`                |\n\n### OPTIONS\n\n- `.options(endpoint)`\n- `.options(endpoint, params)`\n\n| Params     | Type     | Description                                                     |\n|------------|----------|-----------------------------------------------------------------|\n| `endpoint` | `String` | WooCommerce API endpoint, example: `customers/2` or `orders/12` |\n| `params`   | `Object` | Query strings params                                            |\n\n## Example of use\n\n```js\nconst { WooCommerceRestApi } = require('@woocommerce/woocommerce-rest-api');\n\nconst api = new WooCommerceRestApi({\n  url: 'http://example.com',\n  consumerKey: 'ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',\n  consumerSecret: 'cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',\n  version: 'wc/v3',\n});\n\n// List products\napi.get('products', {\n  per_page: 20, // 20 products per page\n})\n  .then((response) => {\n    // Successful request\n    console.log('Response Status:', response.status);\n    console.log('Response Headers:', response.headers);\n    console.log('Response Data:', response.data);\n    console.log('Total of pages:', response.headers[ 'x-wp-totalpages' ]);\n    console.log('Total of items:', response.headers[ 'x-wp-total' ]);\n  })\n  .catch((error) => {\n    // Invalid request, for 4xx and 5xx statuses\n    console.log('Response Status:', error.response.status);\n    console.log('Response Headers:', error.response.headers);\n    console.log('Response Data:', error.response.data);\n  })\n  .finally(() => {\n    // Always executed.\n  });\n\n// Create a product\napi.post('products', {\n  name: 'Premium Quality', // See more in https://woocommerce.github.io/woocommerce-rest-api-docs/#product-properties\n  type: 'simple',\n  regular_price: '21.99',\n})\n  .then((response) => {\n    // Successful request\n    console.log('Response Status:', response.status);\n    console.log('Response Headers:', response.headers);\n    console.log('Response Data:', response.data);\n  })\n  .catch((error) => {\n    // Invalid request, for 4xx and 5xx statuses\n    console.log('Response Status:', error.response.status);\n    console.log('Response Headers:', error.response.headers);\n    console.log('Response Data:', error.response.data);\n  })\n  .finally(() => {\n    // Always executed.\n  });\n\n// Edit a product\napi.put('products/1', {\n  sale_price: '11.99', // See more in https://woocommerce.github.io/woocommerce-rest-api-docs/#product-properties\n})\n  .then((response) => {\n    // Successful request\n    console.log('Response Status:', response.status);\n    console.log('Response Headers:', response.headers);\n    console.log('Response Data:', response.data);\n  })\n  .catch((error) => {\n    // Invalid request, for 4xx and 5xx statuses\n    console.log('Response Status:', error.response.status);\n    console.log('Response Headers:', error.response.headers);\n    console.log('Response Data:', error.response.data);\n  })\n  .finally(() => {\n    // Always executed.\n  });\n\n// Delete a product\napi.delete('products/1', {\n  force: true, // Forces to delete instead of move to the Trash\n})\n  .then((response) => {\n    // Successful request\n    console.log('Response Status:', response.status);\n    console.log('Response Headers:', response.headers);\n    console.log('Response Data:', response.data);\n  })\n  .catch((error) => {\n    // Invalid request, for 4xx and 5xx statuses\n    console.log('Response Status:', error.response.status);\n    console.log('Response Headers:', error.response.headers);\n    console.log('Response Data:', error.response.data);\n  })\n  .finally(() => {\n    // Always executed.\n  });\n```\n","readmeFilename":"README.md"}