これで、API に関する少なくとも入門書ができました。得た知識をどのように活用するのでしょうか?この章では、知識を実用的なソフトウェアに変える方法を探ります。
プロセスを通して見てきたように、API インタラクションには 2 つの側面が含まれます。コード レベルで話しているとしても、実際に言いたいのは、API を実装するプログラムが 2 つ必要であるということです。プログラムは、そのルールに従って API を実装します。ピザ ショップの例のように、クライアントは正しいヘッダーとデータ形式を使用してリクエストを送信し、API を実装するクライアントになります。
サーバー プログラムは、API を公開している会社の責任です。第 6 章を振り返ると、API 設計プロセスについて学びました。計画を立てた後の次のステップは、企業が設計に基づいてソフトウェアを作成して実装することです。最後のステップは、プログラムをサーバーに配置することです。
サーバー側ソフトウェアとともに、同社は API ドキュメントを公開しています。ドキュメントは、API の使用方法を説明する 1 つ以上 (通常は Web ページまたは PDF ファイル) です。これには、使用される認証スキーム、使用可能なエンドポイント、データの形式などの情報が含まれます。これには、応答、コード スニペット、対話型コンソール、既存のエンドポイントなども含まれる場合があります。ドキュメントはクライアントを構築するためのガイドとして機能するため、非常に重要です。 API の仕組みを学ぶために API を使用する人もいるのはこのためです。
ドキュメントを用意すれば、クライアントとして API の使用を開始できる方法もいくつかあります。では、3つ目について説明していきます。
API の使用を開始する簡単な方法は、HTTP リクエストのテストを迅速に構築できる多用途プログラムです。 URL、ヘッダー、本文を指定すると、プログラムはそれを適切な形式でサーバーに送信します。この種のプロジェクトには、Web アプリケーション、デスクトップ アプリケーション、Web ブラウザ拡張機能など、さまざまな形式があります。
汎用 HTTP クライアントを使用する利点は、プログラムがどのように使用されるかを知る必要がないことです。このコースで得た能力を活用して、会社の API ドキュメントを読み、必要なデータを作成するために必要なリクエストを理解できるようになります。この学習曲線の小ささにより、汎用プログラムで 1 回限りのタスクを迅速に検討できるようになります。
API の力を真に活用するには、最終的にはカスタム ソフトウェアが必要になります。これにはプログラミングが必要です。専門分野としてのソフトウェア開発のすべてをカバーしようとするわけではありませんが、API クライアントの作成にどのようなことが含まれるかについていくつかのガイダンスを提供できます。
最初の要件は、使い慣れたプログラミング言語をいくつか知っていることです。ここには多くの人がいますが、それぞれに長所と短所があります。わかりやすくするために、コンパイル言語 (C または C++) ではなく、インタープリタ言語 (JavaScript、Python、PHP、Ruby など) を使用する方が良いかもしれません。
どの言語を選択すればよいかわからない場合は、実装したい API を見つけて、その企業がその API のクライアント ライブラリを提供しているかどうかを確認して言語を絞り込むことをお勧めします。ライブラリは API の所有者によって公開され、クライアントが実装された API です。ライブラリは個別にダウンロードされるか、SDK (ソフトウェア開発キット) にバンドルされる場合があります。ライブラリを使用すると、API のドキュメントを読んで HTTP リクエストをフォーマットする代わりに、数行のコードを簡単にコピーして貼り付けるだけでクライアントを動作させることができるため、時間を節約できます。
選択した言語を使用して、コードを実行する場所を決定する必要があります。タスクを自動化している場合は、職場のコンピューターからの移動が許容されます。多くの場合、サーバーではなくコンピューター上でコードを実行する必要があります。ここには、クラウド サービス (アマゾン ウェブ サービスなど) や、データ センター内の独自の物理サーバー上の共有ホスティング環境でコードを実行するなど、多くのソリューションがあります。
3 番目の重要な決定は、データを何に使用するかを把握することです。結果をファイルに保存するのは簡単ですが、データをデータベースに保存したり、別のアプリケーションに送信したりする場合、作業はさらに複雑になります。データベースから API にデータを送信することも困難な場合があります。この時点で、私たちは立ち止まって、このすべての新しい情報に怯えないよう注意を促すことができます。初めて API にすべてを実装することを期待しないでください。あなたを助けてくれる人々 (オープンソース コミュニティ、開発者、潜在的なプロジェクトの協力者) がいますし、オンラインで利用できる学習リソースもたくさんあります。
基本を理解すれば、ソフトウェア開発について理解できる豊富なトピックがたくさんあります。さて、プログラミング言語を学習してライブラリを入手し、それが機能するようになったら、祝うべきです。得意な方法でさらに多くの API を作成します。
コーディングが現在のスキルや時間の制約を超えている場合は、API を簡単に操作できる優れたツールがあります。ご存知のとおり、それは Zapier です。当社の開発環境は、Zapier 上のアプリとして使用できる API を実装する方法を提供します。ボタンをクリックしてリクエストを送信するだけで、必要なほぼすべての API を実装できます。
私たちは多くのプロジェクトを行ってきましたが、開発プラットフォームを使用する方が便利です。 Zapier にはリクエストコードを作成する場所があり、必要なのは詳細を入力するだけです。使用環境は、あたかも汎用の HTTP クライアントを使用しているかのように考えてください。エンドポイントを指定していただければ、残りの作業は私たちが行います。さらに、Zapier が API と対話できるようになると、返されたデータをどう扱うかについて多くのオプションが選べるようになります。さらに、問題が発生した場合には、問題の解決をお手伝いできる専門家を擁するフレンドリーなサポート チームをご用意しています。
私たちは、「クライアントとは何か?」から始めて、長い時間をかけて学習してきましたが、最終的にはクライアントを構築できるようになります。 API の実装を試みない場合でも、安心して API を実装していただきたいと考えています。 API とは何か、API で何ができるのか、そしてそれが企業にどのようなメリットをもたらすのかがわかりました。
あなたは会社を経営していて、顧客に API を提供する価値を実感しているかもしれません。あるいは、頻繁に行うため、面倒で時間のかかるタスクを自動化することに興奮しているかもしれません。いずれにせよ、これまでに得た貴重な知識が得られることを願っています。このコースから有益だと思われる他の人とこのコースを共有し、情報を広めてください。
この章では、API をソフトウェアに設計する方法について説明しました。 API を使用するいくつかの方法について説明しました。
これが私たちが学んだことです: