API万能説は違う、RPAを活用せよ。という記事がありました。私自身RPAの認定資格もとっている身として、RPAのメリット・デメリットを身をもって感じています。たしかにRPAは万能感がありますが、法的な問題・安定性という根幹的な部分で大きな問題を孕んでいます。
そこで今回は、APIとは何か?なぜAPIが重要なのか?APIとの非エンジニアの付き合い方について、考えていきたいと思います。
目次
そもそもAPIとは? 機械が理解しやすい形で機械同士のデータのやり取りをするためのデータの受け渡し口
APIとは、そもそもとして機械やプログラムが使いやすい形で、ある特定のサービスのデータを読み出したり、書き込んだりすることができるサービスです。
つまり、解釈の揺れが少ない=安定した動作を実現できる仕組み、とも取れます。
また、重要なポイントとしてAPI経由ではないデータ取得(機械的なもの)は不正アクセス禁止法に抵触する場合もあるということです。多くのサイトでは機械によるサイトアクセスは利用規約上禁止しているケースも多く、最悪の場合はアカウント凍結などのリスクがあります(※メルカリなど)。
昨今のWEBサービスはWEBページと裏側のデータ取得(と処理)を別の人が作成することも多くなっています。その中で、裏側の人はAPIをつくり表側のサービスを作る人にわたし、表側の人はそのデータに基づいてどのようにデータを表示したりアニメーションを表示したりするかを決めたりしています。
昨今は様々なWEBサービスがAPIでのデータ操作に対応しています。どんなAPIがあるか?については、楽天がAPI利用サービスを提供しているので、ざっと見てみるとよいでしょう。「こんなデータもすぐにもらえるのか」という気づきがあるかもしれません。
で、ここからが本題です。
APIは、プログラミングなしでもIFTTTやPower Automateで使用できる
APIは「もし~したら。。。してほしい」といった形式で指示をスマホから出せるサービスIFTTTや、メールが届いたら添付ファイルを保存する…といったことをWEB上で定義できるPower Automateなどのツールで簡単に使用することができます。
試しに、IFTTTでのイメージをみてみましょう。
なお、無料プランでは最大3つまでの連携が可能です。
APIがあれば、自分の気になるサービスを開発できる・開発してもらえる
APIは、それぞれのサービス元が自信をもって提供するデータの読み出し・書き込み口です。多くのコンシューマー向けアプリの場合、APIは公開され「どのようなデータが」「どのようにして」送受信できるのか、ドキュメントまで公開されているケースもあります。
そのため、APIを採用しているサービスを契約している場合「こういうデータが来た時にいい感じにデータを整形して、お客様にも自動的にDMを送ってほしいな!」といったアイディアをエンジニアに相談すると、かなりの確率でそのアイディアをスムーズに実現することができます。
おりしもNocode / Lowcodeツールが開発の現場に導入され、複雑ではないアプリケーションであれば比較的短期間で開発できるようになりました。アイディアをスライドにまとめ、クラウドワークスやランサーズなどのクラウドソーシングサイトで見積をとってみるのはいかがでしょうか。100万円に届かない金額で、あなたのお店/企業独自のIT施策が打てるかもしれません。
まとめ:サービス選定はAPIを提供しているか?も視野に入れる時代に
いかがでしたでしょうか。「API連携」とサービス紹介のページに入れるプロダクトが、日に日に増えてきました。例えばCMで話題のKintoneや、POSレジアプリのスマレジは、商品紹介ページに「API連携」が入っています(そして、API連携の可否で値段が変わっています)。すぐに開発をするわけではなければAPI連携の契約は当座不要ですが、将来的に新しいことをやりやすいようにするため、API連携が将来的に追加できるサービスを選択する…というのは次第に標準的な考え方になっていくのでは。と考えています。
小学生でプログラムを学ぶようになってから、はや数年が経ちました。今の子ども達が社会人になって職場に入ってきたとき、面白いことをすぐに実現できる環境を今のうちに整備することは、将来の働き手の働く環境や将来のデジタルネイティブな発想をスピーディに実現する仕組みの整備にもつながり、将来的な利益をもたらすことでしょう。