エンドポイントの設定方法

Kurocoではエンドポイントを独自に複数作成することができます。
このチュートリアルでは、エンドポイントの説明と、エンドポイントの作成方法を紹介します。

エンドポイントとは何か

エンドポイントとは、Kurocoが外部に公開している機能を識別するURLの事です。

例えばKurocoでお知らせ記事を管理し、Webサイトにその一覧を表示したい場合、WEBサイトはKurocoからお知らせ記事一覧を取得する必要があります。

このとき、Kurocoは「このURLにアクセスされたらお知らせ記事の一覧を返す」というURLを準備しなければなりません。このURLがエンドポイントです。

APIとエンドポイントの違い

エンドポイントに似た言葉でAPIというものがあります。
APIとは「Application Programming Interface」の頭文字で、外部に機能を提供するインターフェースを指します。

Kuroco ではAPIという単語を、関連している複数のエンドポイントをグルーピングしたものを示す概念として定義しています。

Image (fetched from Gyazo)

APIをどの様に分けるべきか

KurocoではAPI単位にセキュリティの設定やCORSの設定の設定をおこないます。
そのため、下記の様な基準でAPIを分けることを推奨します。

  • 同じ外部システムから呼び出されるもの
  • 認証方法が同様な複数の外部システムから呼び出されるもの

エンドポイントの作成方法

それでは、実際にエンドポイント作成を行ってみましょう。
今回は、下記にて記事グループが作成されている想定で、一覧を取得するエンドポイントを設定します。

  • グループID:1
  • グループ名:お知らせ

1. 設定方法の概要

管理画面のAPIメニューからAPI一覧画面を開きます。
サイドメニューより、[API] -> [Backend API]をクリックします。

Image (fetched from Gyazo)

[Configure Endpoint]をクリックします。

Image (fetched from Gyazo)

エンドポイント作成画面が表示されます。

Image (fetched from Gyazo)

2. パス - URIを決める

パスを設定します。今回は news と入力します。
有効/無効は「有効」とします。

Kurocoでは、パスの先頭は必ず /rcms-api/X/ となります。
X は整数が入り、APIのIDになります。 それ以降の部分をテキストフォームで記入します。

3. 操作対象となるコンテンツと操作を決める

次にコンテンツを決めて行きます。「モデル」で以下を選択します。

  • カテゴリー: コンテンツ
  • モデル:Topics, v1
  • オペレーション:list

サマリーとディスクリプションは任意となります。エンドポイントの概要を分かりやすくを書いてください。

Image (fetched from Gyazo)

4. Parametersを設定する

エンドポイントの設定には多数の設定項目がありますが、ここでは下記2点のみ設定します。

  • topics_group_id:1
  • cnt:10

topics_group_id にはお知らせの記事グループIDである「1」を入力します。
cntは1ページあたりの記事数を入力します。ここでは「10」と入力してください。

Image (fetched from Gyazo)

入力したら最下部の「Add」をクリックします。

Image (fetched from Gyazo)

設定したエンドポイントの確認をする

設定したエンドポイントを確認します。
API一覧画面内パンくずリストのプルダウンより [Swagger UI] をクリックします。Swagger UI画面を表示します。

Image (fetched from Gyazo)

Swagger UI画面が表示されるので、作成したエンドポイントをクリックします。

Image (fetched from Gyazo)

エンドポイントの情報が表示されます。

Image (fetched from Gyazo)

以上でエンドポイントの作成を終わります。