3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Ship&Coで始める簡単配送プログラミング!

Last updated at Posted at 2020-06-29

この投稿は、ネット通販などで欠かせない配送業務を、クラウド型出荷管理システムShip&CoのAPIを使ってプログラミングし、効率化するための方法について記載します。

  • APIの仕様はAPIドキュメントとして公開されています。詳しい情報をお求めの方はこちらをご参照ください(フッターで日本語と英語の切り替えができます)。
  • 実際のAPI呼び出しのサンプルもPostmanのコレクションとして公開されています。すぐに試したい方はこちらをご参照ください。

Ship&CoのAPIでできることとその利点

Ship&CoのAPIでできることは、送り状の印刷、料金計算、追跡情報の取得、運送会社、倉庫や住所などの関連情報の管理などです。またユニークな機能として、サブユーザーという概念で、それらのデータをユーザーごとに区分して管理することができます。
alt1
alt2

送り状の印刷などは各運用会社がAPIとして提供していることもありますが、それらの処理方法やフォーマットはまちまちです。Ship&CoのAPIの大きな特徴は、運送会社や、国内・海外の発送で異なるインターフェースを同じ仕様のAPIで一元管理できることであり、配送業者を追加したり、変更してもプログラミングの内容を大きく変更する必要がありません。

では、そのShip&CoのAPIの使い方について見てみましょう。

ステップ0:Ship&Coのアカウント登録

Ship&CoのAPIを利用するにはこちらからアカウント登録をする必要があります。すでにアカウントをお持ちの方は不要です。

ステップ1:アクセストークンの取得

こちらに記載されているように、Ship&Coのダッシュボードからアクセストークンを取得します。取得したアクセストークンを所定のHTTPヘッダーに書くことでShip&CoのAPIを呼び出すことができます。
alt3

ステップ2:送り状印刷のAPIを呼ぶ

こちらに記載されているように、上記で取得したアクセストークンを使って送り状印刷のAPIを呼び出します。実際の送り状印刷には各運送会社との契約が必要ですが、Ship&Coにはテストモードがあり、"test": trueのパラメータを付与するだけで実際に課金されないダミーの送り状を印刷できます(注:テスト印刷に対応している運送会社のみ可能)。佐川急便とヤマト運輸は運送会社の登録も不要です(その他のテスト印刷にはShip&CoのダッシュボードかまたはAPIで運送会社の登録が必要)。

実際のリクエストは以下のようになります。
image.png

APIのレスポンスには以下のようなPDFがURLとして含まれますので、それを送り状として印刷します。

image.png

基本的な利用方法は以上です。運送会社、国内・海外の違いを問わずこのステップで送り状を印刷できます。

(オプション:料金の計算)

こちらに記載されているように、送り状印刷のAPIとほぼ同じパラメータを持つ料金計算のAPIを使って、各運送会社のサービスごとの配送料を計算することができます。例えば以下のように、同じ住所に同じものを日本郵便で海外発送をした場合の各サービスの配送料が、APIのレスポンスとして返されます。
image.png

これらのサービスのうち一番料金が安いものを送り状印刷のAPIに指定するようなコードを書けば、常に最安の配送料で送り状を印刷できるプログラムが出来上がります。

Ship&CoのAPIには、そのほかたくさんのTIPSがありますが、それらは別の投稿で詳しく掘り下げたいと思います。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?