API
APIではAPIの作成・設定と、エンドポイントの作成が行なえます。
メニューリスト
画面上部にメニューリストが表示されます。
追加
API作成画面が表示されます。
項目 | 説明 |
---|---|
タイトル | APIタイトルを記入します(必須) |
版 | バージョンを記入します(必須) |
説明 | APIに関する説明を記入します(必須) |
並び順 | APIの並び順を入力します。降順に並びます。 |
追加する | クリックすると新しいAPIが作成されます |
Swagger UI
Swagger UI画面に遷移します。
詳細な利用方法は Swagger UIを利用して、コンテンツのデータ構造を確認するをご確認ください。
キャッシュクリア
API設定のキャッシュをクリアします。
Kuroco内部の動作に変更があった場合、キャッシュをクリアして最新版を適用/反映します。
セキュリティ
APIのセキュリティを設定できます。
セキュリティの設定についてはAPI Securityをご覧ください。
CORSを設定する
CORS用に、Kurocoサーバーからレスポンンスヘッダに返却する情報をカスタマイズできます。
CORSに設定されたOriginは、Content-Security-Policy: frame-ancestorsに指定されるOriginとしても利用されます。
例えば、ローカル上のフロントエンド http://localhost:8080
からKurocoサーバーにアクセスする場合には、下記のhttp://localhost:8080
を設定してください。
詳細はMDNのドキュメントを参照してください。
項目 | 対応するレスポンスヘッダ | http://localhost:8080 の例 |
---|---|---|
CORS_ALLOW_ORIGINS | Access-Control-Allow-Origin | http://localhost:8080 |
CORS_ALLOW_METHODS | Access-Control-Allow-Methods | GET,POST,OPTIONS |
CORS_ALLOW_HEADERS | Access-Control-Allow-Headers | * |
CORS_MAX_AGE | Access-Control-Max-Age | 600 |
CORS_ALLOW_CREDENTIALS | access-control-allow-credentials | ✅ |
APIを更新する
選択中のAPIの設定を変更します。設定項目は追加の項目と同じです。
APIを削除する
クリックするとAPIが削除されます。 削除されたAPIの復活はできませんのでご注意ください。
APIエクスポートする
JSON/YAML 形式でエクスポートが可能です。
エクスポートされるファイルはKuroco独自のフォーマットの設定ファイルです。
エクスポートにpre/post processing設定を含める場合は、「前後の処理ブロックを含む」にチェックを入れてください。
APIインポートする
JSON/YAML 形式でインポートが可能です。
「新しいAPIとしてインポート」を選択すると、新しいAPIが作成されます。
「現在のAPIへのインポート」を選択すると、現在のAPIが更新されます。
OpenAPIエクスポート
JSON/YAML 形式でエクスポートが可能です。
エクスポートされるファイルはOpenAPI仕様に沿った形式の設定ファイルです。
APIのドキュメント化、クライアントやサーバーコードの自動生成、APIテストとモックの作成など、開発ライフサイクル全体で利用されることを目的としています。
サンプル
openapi: 3.1.0
info:
title: Default
version: '1.0'
description: 'Default API'
servers:
-
url: 'https://xxxxxx.g.kuroco.app'
description: 'API Backend'
paths:
/rcms-api/1/news/list:
get:
tags:
- コンテンツ
summary: ''
parameters:
-
name: _output_format
schema:
type: string
format: ''
in: query
required: false
style: form
explode: true
description: '形式 (json|xml|csv|zip)'
-
name: _lang
schema:
type: string
format: ''
in: query
required: false
style: form
explode: true
description: 言語
-
name: _charset
schema:
type: string
format: ''
in: query
required: false
style: form
explode: true
description: 文字コード
-
name: cnt
schema:
type: integer
format: int64
in: query
required: false
style: form
explode: true
description: 1ページの行数
-
name: pageID
schema:
type: integer
format: int64
in: query
required: false
style: form
explode: true
description: ページID
-
name: filter
schema:
type: string
format: ''
in: query
required: false
style: form
explode: true
description: フィルタークエリ
responses:
200:
description: 'Topics data successfully fetched'
404:
description: 'Topics data could not be found'
・
・
・
新しいエンドポイントの追加
エンドポイント作成画面が表示されます。
エンドポイントの作成についてはエンドポイント 設定項目一覧をご覧ください。
エンドポイント一覧
メニューリスト下部にエンドポイントの一覧が表示されます。
新しいAPIを作成した時点では、ここには何も表示されていませんが、エンドポイントを追加することで表が表示されます。
この表は作成したエンドポイントの[カテゴリ]によってグループ化して表示されます。
項目 | 説明 |
---|---|
有効 | APIが有効/無効であるか |
メソッド | HTTPメソッド |
パス | エンドポイントのパス |
モデル | エンドポイントに紐づいているKurocoのモデル |
オペレーション | モデルに紐づくオペレーション |
サマリー | エンドポイント作成時に指定した値 |
パラメータ | オペレーション事項時のパラメータ |
認証 | 認証方式 |
[更新] | クリックするとエンドポイントの編集ができます |
[前処理] | クリックするとPre-processingの設定ができます また、前処理が設定されている場合はその数が表示されます。 |
[後処理] | クリックするとPost-processingの設定ができます また、前処理が設定されている場合はその数が表示されます。 |
[削除] | クリックするとエンドポイントを削除します |
更新履歴の確認
エンドポイントの設定画面からエンドポイントの編集履歴が確認できます。
エンドポイント一覧で、[更新]クリックしてエンドポイントの設定を開きます。
エンドポイントの設定画面の[更新履歴]をクリックすると、エンドポイントの編集履歴が一覧で確認できます。
エンドポイント更新履歴
項目 | 説明 |
---|---|
版 | 版を表示します。 クリックすると対象の版の状態を確認できます。 |
更新日時 | コンテンツが更新された日時を表示します。 |
更新者 | コンテンツを更新したメンバー名を表示します。 |
アクション | 実行した処理の種類を表示します。 アクションは以下の6種類です。
|
コメント | 更新時に残したコメントを表示します。 |
内容 | 更新した内容を表示します。 |
関連ドキュメント
- エンドポイントの設定方法
- エンドポイント設定後の注意点
- Swagger UIを利用して、コンテンツのデータ構造を確認する
- APIにアクセス元の国や都道府県を追加する
- カスタム処理と紐づいたAPIエンドポイントを作成する
- ログインユーザーの情報でAPIのレスポンスを動的に変更する
- カスタム処理を利用して、APIエンドポイントに独自のスタブを設定する
- カスタム処理を利用して、APIに独自のバリデーションを実装する
- カスタム処理を利用して、APIのメイン処理に渡すリクエスト値を書き換える
- エンドポイント 設定項目一覧
- 前処理
- 後処理
- 検索機能の使い方
- 関連しているデータを条件にしたfilter機能
- APIのキャッシュについて
- APIキャッシュクリアのタイミングと範囲
- APIをJSON以外のフォーマットでレスポンスできますか?
サポート
お探しのページは見つかりましたか?解決しない場合は、問い合わせフォームからお問い合わせいただくか、Slackコミュニティにご参加ください。