ファンリピート社のブログFR note

【Swaggerの使用方法】BubbleのAPI仕様書作成方法について解説!

あけましておめでとうございます。ファンリピートの鳴海です。

今回はswaggerを使ってbubbleのapiドキュメントを作る方法について解説いたします。

目次

\ 年末までに限った無料特典 /
貴社のシステム開発・アプリ開発を爆速で進めるための
【毎月先着2社限定】デモアプリ構築・無料依頼フォーム

【当社では、こんなデモアプリがすぐに作れます】

  • 貴社で「まずつくってみたい」試作品アプリの構築を毎月先着2社限定で無料で承っております
  • 社内の管理システムからtoB, toCのWebサービスまで幅広くご支援可能です
  • ご興味のある方は下記のフォームよりお申し込みください

bubbleとは?

Bubble

URL:https://bubble.io/blog/content/images/2020/09/Logo-with-clearspace.png

コードを書かずにアプリを作れる

一般的なWebサービスやWebアプリの開発では、プログラミングコードを書くといったイメージがありますが、ノーコードツールBubbleでは名前の通り、ノーコードで開発できるサービスとなっています。

また、クラウドプラットフォームというサイト上でアプリケーションを構築できるので、インターネットがあればいつでもどこでもアクセスができるため、チームで連携してアプリを作れます。

bubbleについての詳細は「ノーコードツール「Bubble」って?特徴・料金・使い方を解説」という記事でも解説しておりますので、気になる方は一度ご覧になってみてください。

Bubble APIとは?

API (Application Programming Interface)は、ソフトウェアシステム同士を接続するための仕組みです。

APIは、あるソフトウェアの「鍵」を提供し、他のソフトウェアがその「鍵」を使って機能を呼び出すことができるようにします。例えば、Twitter APIを使用すると、他のアプリケーションからTwitterの機能を呼び出すことができます。

APIを使用することで、開発者はWebサイトやアプリケーションの機能を拡張したり、外部サービスと連携したりすることができます。

Backend workflowとは?

APIのエンドポイント、スケジュールされた処理、バッチ処理など行うシステムです。

通常のworkflowではリダイレクト処理、ページ読み込み時の処理、データ操作などができます。

backend workflowの特徴としては、全ページに対して処理ができます。

詳しくはこちらの記事をご覧ください。

あわせて読みたい
The Workflow API | Bubble Docs This section covers how to use API workflows to allow external applications to execute workflows in your Bubble app.

Swaggerとは?

SwaggerとはAPIの説明書を作るツールです。

Swaggerとは?

SwaggerはAPI仕様を定義し、ドキュメント化するためのオープンソースツールです。

API開発者はSwaggerを使用することで、API仕様を簡単に公開したり、他の開発者に対してAPIを使用する方法を伝えたりすることができます。
Swaggerの公式サイト

Swaggerのメリット

PI仕様書の簡単な作成: SwaggerはAPIのエンドポイント、リクエストとレスポンスの形式などを定義することで、API仕様書の作成を簡単にします。

統一性の確保: Swaggerを使うことでAPI仕様書を統一的な形式で管理することができます。

開発のスムーズさ: API開発者とコラボレーターは、Swaggerを使ってAPI仕様書を共有することで、開発のスムーズさを確保することができます。

Swaggerのデメリット

学習のコスト: Swaggerを使うためには、学習コストが必要です。

導入のハードル: Swaggerを導入するためには、技術的な知識やリソースが必要です。

更新のコスト: APIが変更された場合、Swaggerを使ったAPI仕様書も合わせて更新する必要があり、この作業には手間やコストがかかります。

API仕様書を作成してみよう!

Bubble APIの機能とリクエスト・レスポンスの仕様について作成していきましょう。

Bubbleの設定

プランはPersonal以上となりますので、注意してください!
流れとしては、テーブルの設定と作成、データをセット、APIを使えるように設定していきます。

テーブルの設定

データ設計は下記の通りとなります。
Product_information

Column NameData Type
IDnumber
nametext
pricenumber
amountnumber
contenttext


Cart_Information

Column NameData Type
IDnumber
user_IDUser(User情報のリレーション)
product_IDnumber(Product_informationのリレーション)
amountnumber


Bubbleで実際に設定していきます。
①Product_informationを作成するために、New typeから作成します。
②それぞれカラムに合わせたデータタイプで作成します。

Product_informationのテーブル設計

同じような手順で、Cart_informationも設定していきます。
①Cart_informationを作成するために、New typeから作成します。
②それぞれカラムに合わせたデータタイプで作成します。

Cart_informationのデータ設計

データの挿入

ダミーデータを用意したので、そちらからBubbleのDataタブのUploadからインポートしてあげてください。


ダウンロード出来ない方へ
下記の文言をメモなどで貼り付けし、products_information.csvで保存してください。

ID,name,price,amount,content,created_at

1,”Apple”,100,50,”Red Delicious apples”,”2022-12-01 12:00:00″

2,”Banana”,50,100,”Yellow bananas”,”2022-12-02 13:00:00″

3,”Grape”,80,20,”Green grapes”,”2022-12-03 14:00:00″

products_informationのCSVをメモに貼り付けている画面

products_informationのCSVファイルが作成できたら、DataタブのUploadをクリックします。

BubbleのUploadボタン

ファイルをアップロードします。

Pick a file to uploadを押す画像

①Type of dataをproduct_infomationで設定します。
②Map fieldsをクリックします。

Type of dataとMap filedsを押す画面


Validate dataをクリックして、データが間違っていないかの確認を行ってくれます。

Validate dataを押す画面


問題がなければUpload dataをクリックします。

upload dataでCSVファイルをアップロードする画面

正常にデータが作成していればOKです!

Product_informationにアップロードしたデータ入っている画面

次にUser_informationを作成していきます。
任意で3つ作成してください。

User情報にダミーデータを入力後の画面

同様にCart_informationも作成していきます。
こちらはそれぞれUserとProducts_informationのUnique idをコピーして、メモ帳などに残しておいてください。

Cart_informationのダミーデータを作成するさいに、user情報とproducts_informationのそれぞれのunique idをメモに貼り付けている画面


手打ちとはなりますが、それぞれ作成します。

Cart_informationに入力後の画面


設定が終わりましたら、APIを公開していきます。
Setting→APIの順で進み、それぞれにcheckを入れます。

Bubble APIの設定画面


これでリクエストやレスポンスの設定ができるようになりましたので、Swaggerの方に進みます。

Swaggerの設定

Swagger editorと検索、または下記のURLを開きます。

https://editor.swagger.io/

FileからImport URLをクリックします。

Swagger editorにURLをインポートしている画面


URLには下記の通りで入力します。

https://アプリ名.bubbleapps.io/version-test/api/1.1/meta/swagger.json

画像のようにアプリ名かつエラーが表示されていなければOKとなります。

Swagger editorで正常にURLが読み込まれた時の画面

Swaggerの使い方


例えばProduct_informationのAppleという情報をAPI経由で取りたいなと思いましたら…

BubbleでProduct_informationのAppleのunique idをコピーします。

Product_informaitonのAppleというデータのunique idをコピーしている画面


Try it outをクリックして、コピーしたunique idを貼り付けし、Executeを押下します。

そうすると、CurlやRequest URLが帰って来たり、

GETのリクエスト結果

取得したデータの結果も返ってきます。

GETのリクエスト結果の詳細

それ以外でも下記の通りでリクエストを送ることができます。

  • GET: サーバーからデータを取得するためのリクエスト
  • PATCH: サーバー上のデータを一部変更するためのリクエスト
  • PUT: サーバー上のデータを全て変更するためのリクエスト
  • DELETE: サーバー上のデータを削除するためのリクエスト
  • POST: サーバーにデータを新規作成または更新するためのリクエスト

追記として、BubbleでAPIの作成や更新、削除を行いたくない場合はPrivacy rulesで行えます。

まとめ

今回はSwaggerについて調査致しました。Bubbleのデータをエンドポイントとして使用したいとき、API仕様書を作成したい時などにそれぞれ役立つことができるツールとなりそうですね。

以上、今回はSwaggerを使ってAPIドキュメントを作成する方法についてでした。

メンバーを募集中!

当社ではお客様に向き合い、お客様の事業成功にコミットをできる仲間を募集しています。

正社員、インターンから副業まで、幅広く採用活動を進めております。プロジェクトマネージャーやシステムエンジニアとして当社のシステム開発業務に携わってみませんか?

当社と共に、業界トップを目指して挑戦したい方は未経験者から経験者まで広く募集しているので、ぜひエントリーをお待ちしています。

\ システム開発にお悩みの方へ /
貴社のシステム開発・アプリ開発を爆速で進めるための
超高速開発が分かる資料3点セット

【下記の3点の資料が無料でダウンロードできます】

  • 【料金表付き】新規事業を爆速で立ち上げられる高速開発支援サービスの紹介資料
  • 【最短24時間で納品?】高速開発のプロジェクト支援事例集
  • 導入に向けて開発プラットフォームのランニングコスト比較表
  • URLをコピーしました!

この記事を書いた人

株式会社ファンリピートのアバター

株式会社ファンリピート

FRnoteは株式会社ファンリピートのメンバーによって運営されている社内ブログです。ノーコード・ローコードの技術ブログを始めとして、最新のIT技術、業務で役立つノウハウなど様々なトピックをまとめています。


目次
閉じる