0.01
Low commit activity in last 3 years
There's a lot of open issues
No release in over a year
A Ruby wrapper for the Shipstation API
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

Shipstation

Gem Version

A Ruby wrapper for the Shipstation API.

Installation

Add module to your Gemfile:

gem 'shipstation'

Then run bundle to install the Gem:

bundle install

Set up an initializer file with your Shipstation API keys:

Shipstation.username  = 'shipstation_api_key'
Shipstation.password  = 'shipstation_api_secret'

e.g. config/initializers/shipstation.rb

Usage

This gem provides a collection of operations for use within the Shipstation API.

List

List all records for a resource.

Shipstation::Carrier.list
Shipstation::Customer.list
Shipstation::Fulfillment.list
Shipstation::Order.list
Shipstation::Product.list
Shipstation::Shipment.list
Shipstation::Store.list
Shipstation::Warehouse.list
Shipstation::Tag.list

Retrieve

Retrieve a single record of a resource.

Shipstation::Customer.retrieve(customer_id)
Shipstation::Fulfillment.retrieve(fulfillment_id)
Shipstation::Order.retrieve(order_id)
Shipstation::Product.retrieve(product_id)
Shipstation::Store.retrieve(store_id)
Shipstation::Warehouse.retrieve(warehouse_id)

Create

Create a single record of a resource.

Shipstation::Order.create(order_params)
Shipstation::Warehouse.create(warehouse_params)

Create Bulk

Create a bulk records of a resource.

Shipstation::Order.createbulk(order_params)

Update

Update a single record of a resource.

Shipstation::Product.update(product_params)
Shipstation::Store.update(store_params)
Shipstation::Warehouse.update(warehouse_params)

Apart from the standard CRUD operations, there are also some custom operations for specific use cases.

Create a new Order Label.

Shipstation::Order.create_label(order_label_params)

Void an Order Label.

Shipstation::Order.void_label(order_label_params)

Assign Tag to an Order.

Shipstation::Order.assign_tag(assign_tag_params)

Remove Tag from an Order.

Shipstation::Order.remove_tag(remove_tag_params)

Delete an Order

Shipstation::Order.delete(order_id)

Get Shipment Rates

Shipstation::Shipment.get_rates(get_rates_params)

Create Shipment Label

Shipstation::Shipment.create_label(create_label_params)

List Carrier Services

Shipstation::Carrier.list_services(list_services_params)

Susbcribe to Webhook

Shipstation::Webhook.subscribe(webhook_params)

Unsusbcribe to Webhook

Shipstation::Webhook.unsubscribe(webhook_id)

Versioning

Shipstation Ruby wrapper follows Semantic Versioning 2.0 as defined at http://semver.org.

How to contribute

  • Fork the project
  • Create your feature or bug fix
  • Add the requried tests for it.
  • Commit (do not change version or history)
  • Send a pull request against the development branch

Copyright

Copyright (c) 2024 Douglas Lim (@hellodouglim)
Licenced under the MIT licence.