ネクストエンジン API 開発者フォーラム: NE側のサーバー時間を取得したい
ネクストエンジン API のネクストエンジンAPIについてに関する開発者フォーラムの質問と回答。クライアントアプリ・ストア連携・エンジン利用についてのQ&A。
投稿者: 匿名ユーザー 日時: 2020/02/04
カテゴリ: ネクストエンジンAPIについて
いつも大変お世話になっております。
お忙しい中目を通していただきありがとうございます。
APIを用いてデータを取得した時間をDBに保存したいと考えているのですが、API側とこちらのサーバーの時間がずれていますと問題があるため、
API側の現在のサーバー時刻を取得したいのですが、そのようなAPIは存在しますでしょうか?
回答 (5件)
Section titled “回答 (5件)”運営 — 2020/02/05
Section titled “運営 — 2020/02/05”お問い合わせありがとうございます。
申し訳ございませんが、弊社APIサーバーの時間を取得する
エンドポイントはございません。
なお、ご質問への質問となり大変恐縮ではございますが、
弊社APIサーバーの時間取得の目的はどのようなものでしょうか。
もし、差分を取得したいということでしたら、
最終更新日(xxx_last_modified_null_safe_date)を内部に
保存していただき、そこから差分を取得していただく方法が
よろしいかと存じます。
匿名ユーザー — 2020/02/06
Section titled “匿名ユーザー — 2020/02/06”最終更新日を内部保存し、それ以降に更新されたデータを取得することを想定しております。
下記QAにある通り、こちらの意図しないデータ更新もあるようです。
https://developer.next-engine.com/questions/1394
例えばmAmazon指示によるマスク化対応後に「保存した最終更新日」で差分取得すると、
全件取得してしまうのではないでしょうか?
運営 — 2020/02/06
Section titled “運営 — 2020/02/06”マスク化など内部処理により最終更新日はオペレーションの有無に関わらず発生することがございます。
件数を減らし上書きしても問題なければこの「最終更新日」で処理しても問題ないとは思いますが、正確に特定の項目のみ変更があったものを「差分」と定義するのであれば、受注番号や明細番号、特定項目のNull/Emptyなどを、検索条件に加えていくことにはなってしまいます。
また、受注伝票の差分取得などでよくやる方法としましては、「受注分類タグ」を使う方法がございます。
-
受注伝票検索→A処理を実行→「A処理済み」の受注分類タグを貼付
-
受注伝票検索(条件:受注分類タグ「A処理済み」)→B処理を実行→「B処理済み」の受注分類タグを貼付
このように行うことで差分取得を行うことはできます。
もし実現しいことが異なるようでしたら、改めて実現したいことを記載の上ご質問くださいませ。
以上、ご質問へのご回答とさせていただきますが、その他ご不明点がございましたらお気軽にお申し出くださいませ。
匿名ユーザー — 2020/02/06
Section titled “匿名ユーザー — 2020/02/06”ご回答ありがとうございます。
ネクストエンジンのAPIを利用して自社システムに受注情報を取り込む」際に下記対象を取得したいです。
1.新規受注
2.キャンセルされた受注
こちらの想定としましては
<n回目の連携>
一定間隔でAPIを使って、前回API連携した日時より後に作成/更新された受注伝票/受注明細を取得
前回API連携した日時より後にキャンセルされた受注伝票を取得(注文キャンセル日で引き当て)
API連携した日時を保持
<n+1回目の連携>
前回API連携した日時を起点とし、n回目の連携と同様の処理を行う
運営 — 2020/02/06
Section titled “運営 — 2020/02/06”■新規受注について
初回取得時に受注日時を保持し、それより新しい伝票を検索するのはいかがでしょうか。
「receive_order_date」
こちら日時型となっておりますので、
receive_order_date-gte=‘yyyy-mm-dd hh:mm:ss’;
で検索し、取得した最新の日時を保存。次回、この日時で検索。
■キャンセルについて
こちらは対象となる受注状態区分とキャンセル日時で検索するのはいかがでしょうか。
「receive_order_order_status_id」
「receive_order_cancel_date」
出荷済みの伝票がキャンセルされることはないのであれば受注状態区分を指定すると絞り込めます。
receive_order_cancel_date-gte=‘yyyy-mm-dd hh:mm:ss’;
で検索し、取得した最新の日時を保存。次回、この日時で検索。
上記、お試しいただければ幸いです。
以上、ご質問へのご回答とさせていただきますが、その他ご不明点がございましたらお気軽にお申し出くださいませ。