Ninow API

配送キャンセルAPI

配送依頼をキャンセルするAPIです。

Ninow

エンドポイント

POST /api/order/cancel

リクエストデータ形式

Content-type:application/x-www-form-urlencoded

リクエストパラメータ

No パラメータ名 項目名 任意/必須 設定値(例) 形式 説明
1 client_key クライアントキー 必須 abcdefghij0123456789 20桁の英数字 ninowユーザーに割り当てられた認証キー。
通知書に記載の値を使用してください。
2 s_key 荷主キー 必須 abcde0123456789 15桁の英数字 荷主を識別するキー。
通知書に記載の値を使用してください。
3 tracking_no 問合番号 任意 KIT26000000001 20桁以内の英数字 荷札に印字されているバーコードの文字列と同じ番号。
4 order_no 注文番号 任意 A260522000001 20桁以内の英数字 問合番号と対になる注文番号(荷主側の管理番号)。

レスポンスパラメータ(正常)

No パラメータ名 項目名 設定値 / 形式 説明
1 status 成否 "OK"
2 body 結果
2-1 └ result 結果 true
2-2 └ error エラーメッセージ

レスポンスパラメータ(エラー) ※HTTPステータスコードが400等の場合

No パラメータ名 項目名 設定値 / 形式 説明
1 result 成否 "false"
2 error エラーメッセージ 認証エラーやパラメータエラー等

レスポンスパラメータ(エラー) ※取込できないデータが送信された場合(必須項目が未設定の場合等)

No パラメータ名 項目名 設定値 / 形式 説明
1 status 成否 "NG"
2 body 結果
2-1 └ result 結果 true
2-2 └ error エラーメッセージ 文字列 エラー内容(データなし or 配送中のため、キャンセル不可)

リクエスト例(テスト環境)

POST https://demo02.exchanger.ninow.jp/api/orders/import client_key = (通知されたクライアントキー) s_key = (通知された荷主キー) tracking_no = 問合番号

レスポンス例

✅ 成功時 {"status":"OK","body":{"result":true,"error":""}} ❌ 失敗時 {"result": "false", "error": "エラーメッセージ"} ①キャンセルしようとした配送依頼番号(注文番号)がない場合 {"status":"NG","body":{"result":false,"error":"Order Data Not Found."}} ②既にキャンセル済の配送依頼番号(注文番号)の場合 {"status":"NG","body":{"result":false,"error":"This shipment cannot be canceled because it is already canceled."}} ③配送中のため、キャンセルができない配送依頼番号(注文番号)の場合 {"status":"NG","body":{"result":false,"error":"This shipment cannot be canceled because it is already out for delivery."}}

注意事項

サンプルコード

cURL(コマンドライン)

curl -X POST https://demo02.exchanger.ninow.jp/api/order/cancel \ -F "client_key=YOUR_CLIENT_KEY" \ -F "s_key=YOUR_S_KEY" \ -F "tracking_no=987654321000"

PHP(cURL関数使用)

<?php $url = 'https://demo02.exchanger.ninow.jp/api/orders/cancel'; $client_key = 'YOUR_CLIENT_KEY'; $s_key = 'YOUR_S_KEY'; $tracking_no = "987654321000"; $post_data = [ 'client_key' => $client_key, 's_key' => $s_key, 'tracking_no' => $tracking_no, ]; $ch = curl_init( $url ); curl_setopt( $ch, CURLOPT_POST, true ); curl_setopt( $ch, CURLOPT_POSTFIELDS, $post_data ); curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true ); $response = curl_exec( $ch ); $http_code = curl_getinfo( $ch, CURLINFO_HTTP_CODE ); curl_close( $ch ); $result = json_decode( $response, true ); if ( $result['result'] === 'true' ) { // 登録成功 echo '登録成功'; } else { // 登録失敗< echo 'エラー: ' . $result['error']; }