見出し画像

外部サービスとのAPI連携での注意点

ここ最近趣味が無いことに悩んでおり、ゴルフスクールに通おうかと考えているyaoです。

先日、請求処理の手入力をなくせるように自動化する大きめな機能がリリースされました🎉

スクリーンショット 2021-10-29 20.31.58

その際に、上のフローの様に外部請求サービスとAPI連携を行いましたので振り返っていきたいと思います。

ドキュメントは確実ではない

外部サービスAPI連携の実装を進める際には、必要なAPIは何か、そのAPIにはどのようなリクエストを送って、どのようなレスポンスが返ってくのかをAPIドキュメントを読むところから始めると思います。

私も本実装時にドキュメントの確認→開発と進めていきました。そうして進めていく中である問題点に遭遇します。

それは、ドキュメントに記載があるレスポンスが条件によっては返ってこない場合がありました。

そして、ドキュメントは絶対だと思い込んでいた私は、進めていた部分を手戻しして修正する事になりました。。

このことから、ドキュメントは絶対だと思い込まず、開発する前にパターンを洗い出しレスポンスを確認する『ドキュメントの確認→レスポンス確認→開発』の順で今後は進めていこうと思います。

わからないことはすぐ聞く

ドキュメントが用意されているとはいえ、外部のサービスですので、提供頂いている会社の中の人にしかわからないこともあります。先に遭遇した『ドキュメントに記載があるレスポンスが条件によっては返ってこない』という問題もそうです。

『何故レスポンスが返ってこないんだろう?』『何か値を変えてリクエストを送れば欲しいレスポンスが返ってくるか?』と考えてもわからないものはわからないです。

もし、サポート窓口などがある場合はすぐに聞くことが良いと思います。

テストコードを信用しすぎない

本実装での一番の反省点はこちらになります・・・

API連携の挙動が正しいかのテストコードを書き、テストが通る様に実装を進めていきました。外部サービスとの連携でしたので、あらかじめモックのレスポンスを用意して進めていきました。ここである問題に遭遇します・・

実際にAPI連携を行うと、想定通りに動かない。何故なのか確認し、たどり着いたのは、ドキュメントのレスポンスとモックのレスポンスにズレがあったのです。。

テストコードはあくまで私が書いたものですので、信用しすぎると最悪の場合、全て修正する事になってしまいます。今後は、少しずつ挙動確認を行い早めに気付ける様にしようと思いました。

最後に

ツクリンクでは一緒に建設業界を盛り上げていく新しい仲間を絶賛募集中です!少しでも興味をお持ちの方は、お気軽にご連絡ください!

プロダクト開発
セールス
CS
コーポレート

この記事が気に入ったらサポートをしてみませんか?