https://github.com/johnhamelink/shipstation
A Shipstation API client library for Elixir
https://github.com/johnhamelink/shipstation
api-client elixir elixir-lang fulfillment logistics shipping shipstation shipstation-api
Last synced: 4 months ago
JSON representation
A Shipstation API client library for Elixir
- Host: GitHub
- URL: https://github.com/johnhamelink/shipstation
- Owner: johnhamelink
- License: mit
- Created: 2017-02-14T01:24:42.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2020-02-26T19:01:50.000Z (over 6 years ago)
- Last Synced: 2025-10-08T22:42:30.491Z (9 months ago)
- Topics: api-client, elixir, elixir-lang, fulfillment, logistics, shipping, shipstation, shipstation-api
- Language: Elixir
- Homepage: https://hexdocs.pm/shipstation
- Size: 157 KB
- Stars: 4
- Watchers: 1
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Shipstation
[](https://ebertapp.io/github/johnhamelink/shipstation)
[](https://travis-ci.org/johnhamelink/shipstation)
[](https://hex.pm/packages/shipstation)
[](https://hexdocs.pm/shipstation)
[](https://libraries.io/github/johnhamelink/shipstation)
---
### This library is now ready to undergo testing in staging & production environments, but it is *not* production ready.
Shipstation is an unofficial API client library for the [Shipstation](https://shipstation.com) API. This library implements all the functionality that exists in Shipstation's API, and also provides helpful features like automatic backpressure handling.
### Features
- [x] A complete API
- [x] Every API endpoint has been unit tested
- [x] Configurable API endpoints (for using Shipstation's Apiary endpoint in testing, for example).
- [x] Automatically handles backpressure using a [backpressure Agent](https://github.com/johnhamelink/shipstation/blob/master/lib/request_limit.ex)
## Installation
The package can be installed as:
1. Add `shipstation` to your list of dependencies in `mix.exs`:
```elixir
def deps do
[{:shipstation, "~> 0.2.0"}]
end
```
2. Ensure `shipstation` is started before your application:
```elixir
def application do
[applications: [:shipstation]]
end
```
#### Todo List:
- [ ] Provide a standard for handling dates in the correct format
- [ ] Deserialize JSON output into Model structs