legacy-knowledge-base
公開されました Jun. 30, 2025

APIビルダーの改善

written-by

Liferay Support

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

コンテキスト

現在、顧客がカスタム・オブジェクト上で動作するカスタムAPIを作成する必要がある場合、2つの選択肢がある:

  • オブジェクトと共に生成されたデフォルトのAPIを使用する(各オブジェクトに1つのAPI)
  • RESTビルダー上で開発する(パートナーまたは自社のIT部門を使う)

オブジェクトのカスタムデータリストを作成する必要がある場合も同様です。 唯一の可能性は、それを開発することだ。

そこで、この最後のユースケースに焦点を当てつつも、より複雑なユースケースをカバーできる本格的なツールを提供することを長期的な目標として、私たちはAPI Builderを開発しました:コードなしでカスタムAPIアプリケーションを作成する方法です。

私たちがしてきたこと

私たちは、開発者がNo Code UIでカスタムオブジェクトに基づいたAPIを構築するのを支援する新しいアプリケーションを作成しました。 この新機能により、ユーザーはエンドポイント名からリクエストとレスポンススキームのデータモデルまで、APIの構造全体を定義することができる。

仕組み

我々はUI部分に焦点を当てるつもりだが、 API Builderの永続化レイヤーはオブジェクトであり、すべてのオブジェクトはデフォルトで作成された独自のCRUD APIアプリケーションを持っているため、すべての機能がAPIレイヤー で利用可能であることを知っておくことは非常に重要である。

オブジェクト & API アプリケーション:

  • APIアプリケーション
  • APIエンドポイント
  • APIスキーマ
  • APIプロパティ
  • APIフィルター
  • APIソート

APIアプリケーション:

image01.png

APIアプリケーションの作成

image02.png

新しいAPIアプリケーションを追加する

ユーザーがタイトルを入力すると、URLは自動的に小文字で補完され、"-"以外の特殊文字は削除されます。 モーダルに記載されているように、ユーザーは必要に応じてAPIアプリケーションの相対URLを変更することができます。

アプリケーションが作成されると、ユーザーはアプリケーションの詳細を見たり変更したりすることができます。 さらに、2つの新しいタブにアクセスできる:エンドポイントとスキーマだ。

image03.png

編集 & 削除

image04.png

アプリのリストから、ユーザーは直接アクセスできる:

  • 編集:編集ページに直接アクセス。
  • 削除: ユーザーがこのオプションをクリックすると、確認のモーダルが表示されます。 削除を確認するには、アプリ名を入力する必要があります。

image05.png

APIスキーマ:

image06.png

APIスキーマの作成

  • 名前:スキーマの名前はユーザーが決める
  • Description: tユーザーは説明を追加できる(必須ではない)
  • オブジェクト:既存のオブジェクト(システムとカスタム)のドロップダウンリスト。 スキーマに追加されたすべてのプロパティは、メイン・オブジェクトまたはその関連オブジェクトに属する。

編集 & 削除

スキーマのリストから、ユーザーは編集や削除を行うことができる。 編集オプションをクリックすると、ユーザーは編集ページの情報タブに移動し、削除オプションをクリックすると、確認モーダルが表示されます。

image07.png

API スキーマのプロパティ:

ユーザーは、2つの異なる領域を使用して、UIでスキーマの構造とプロパティを定義することができます:

image08.png

  1. スキーマ構造:このエリアでは、ユーザーはプロパティを並べ替えたり、検索したり、スキーマのホール 構造を見ることができる。
  2. メイン・オブジェクトからのプロパティ:このエリアでは、ユーザーはスキーマに追加するプロパティをクリックするだけで選択できる。 メインのオブジェクトのプロパティとは別に、関連するオブジェクトがあれば、"View Related Objects "ボタンが表示されます。

スキーマにプロパティを追加する:

任意のプロパティにカーソルを合わせると、 :heavy_plus_sign: アイコンが表示され、名前またはアイコンをクリックすると、そのプロパティが領域 1 内のプロパティの上部に表示されます。 ユーザが関連オブジェクトからプロパティを追加したい場合、「View Related Objects」ボタンを使用し、適切なプロパティに移動することができます。

image09.png

スキーマのプロパティを編集する:

スキーマ構造内のプロパティにカーソルを合わせると編集アイコンが表示され、クリックするとモーダルが表示されます。

image10.png

  • 名前:スキーマ定義時に表示されるラベル
  • Description: property の説明(必須ではない)
  • データ型:オブジェクトのプロパティの型(変更不可)
  • マッピングされたプロパティ:スキーマ・プロパティにマッピングされたオブジェクトのフィールド(変更不可)

スキーマのプロパティを削除する:

スキーマ構造のプロパティにカーソルを合わせると、削除アイコンが表示され、それをクリックすると、プロパティはスキーマから削除され、オブジェクト・プロパティ・リストで再び有効になります。

APIエンドポイント:

image11.png

APIエンドポイントの作成

新しいエンドポイントを作成するには、ユーザーは2つのフィールドを入力するだけです:スコープ(会社またはサイト)とパスです。 その後、エンドポイントが作成されると、 構成 タブで、ユーザーはレスポンスに関連するスキーマを選択できる:

image01.png

を追加し、 プレフィルターソート を OData クエリを使用して追加します:

  • フィルターの例: name eq 'Mary'
  • ソート例: 名前:desc, 姓:asc

編集と削除:

エンドポイントのリストから、ユーザーは編集や削除を行うことができます。 編集オプションをクリックすると、ユーザーは編集ページの情報タブに移動し、削除オプションをクリックすると、確認モーダルが表示されます。

image02.png

APIアプリケーションの公開と解除

現在、APIアプリケーションは2つの状態のいずれかになる:公開と未公開だ。

  • Unpublished: アプリケーション作成時のデフォルトの状態です。 この状態では、アプリは他のシステムでは利用できず、ヘッドレスAPIエクスプローラーにも表示されない。
  • Published: すべてのバリデーションが正しい場合、アプリは利用可能になり、他のシステムからアクセスできるようになり、ヘッドレスAPIエクスプローラーに表示されます。 パスは https://{host}/o/c/{app_path}/となる。

ユーザーはいつでもステータスを変更できる。 公開から未公開への変更の場合のみ、この確認モーダルが表示されます:

image03.png

デモ & その他のリソース

制限事項

この最初のMVPでは、 GET エンドポイントのみが作成可能で、スキーマの構造はフラットです(プロパティ間の複雑な階層を作成する可能性はありません)。

次のステップ

  • PUT、POST、PATCH、DELETE、GET の単一要素 メソッドを作成できます。
  • スキーマ内部で複雑な階層(コンテナ)を使用できる:
    • シングル・エレメント

    • 配列要素

did-this-article-resolve-your-issue

legacy-knowledge-base