Forked and patched version of the official ShipEngine JavaScript SDK for Node.js
npm install featherbone-shipengine
ShipEngine JavaScript SDK
=====================================================






Quick Start
--------------------------
Install ShipEngine JavaScript SDK via npm.
``bash`
npm install shipengine
The only configuration requirement is an API key.
`javascript
const ShipEngine = require("shipengine");
const shipengine = new ShipEngine("___YOUR_API_KEY_HERE__");
`createLabelFromRate
Methods
-------------------------------
* - When retrieving rates for shipments using the getRatesWithShipmentDetails method, the returned information contains a rateId property that can be used to purchase a label without having to refill in the shipment information repeatedly.createLabelFromShipmentDetails
* - Purchase and print a label for shipment.getRatesWithShipmentDetails
* - Given some shipment details and rate options, this method returns a list of rate quotes.listCarriers
* - Returns a list of carrier accounts that have been connected throughtrackUsingLabelId
the ShipEngine dashboard.
* - Track a package by its associated label ID.trackUsingCarrierCodeAndTrackingNumber
* - Track a package for a given carrier and tracking number.validateAddresses
* - Indicates whether the provided addresses are valid. If the addresses are valid, the method returns a normalized version based on the standards of the country in which the address resides. If an address cannot be normalized, an error is returned.voidLabelWithLabelId
* - Void a label with its Label ID.
Contributing
--------------------------
Contributions, enhancements, and bug-fixes are welcome! Open an issue on GitHub and submit a pull request.
#### Building
To build the project locally on your computer:
1. __Clone this repo__
git clone https://github.com/ShipEngine/shipengine-js.git
2. __Install dependencies__
npm install
3. __Build the code__
npm run buildnpm run watch
Or you can use to automatically re-build whenever source files change.
4. __Lint the code__
npm run lintnpm run lint:fix
Or you can use to automatically fix most linting errors.
5. __Run the tests__
npm testnpm run test:node
This runs tests in both Node.js and web browsers. Use to only run Node.js tests, or npm run test:browser` to only run browser tests.
Committing
-------------------------
This project adheres to the Conventional Commits specification.
Publishing
-------------------------
Publishing new versions of the SDK to NPM is handled on GitHub via the Release Please GitHub Actions workflow. Learn more about about Release PRs, updating the changelog, and commit messages here.