Repolode
APIJSON

APIJSON/APIJSON

クライアントが必要なデータとレスポンス形式を指定できる、JSONベースのプロトコル兼ORMライブラリ。手書きのエンドポイントを増やさずに多様なAPIを提供できます。

スター
18,391
フォーク
2,278
未解決の Issue
237
最終コミット
6 日前

これは何?

APIJSONは、バックエンドAPI開発向けのJSONベースの通信プロトコル兼ORMライブラリです。クエリごとに個別のエンドポイントを定義する代わりに、クライアントが必要なテーブル、フィールド、フィルター、関連データを記述したJSONリクエストを送信し、サーバーは同じ構造のレスポンスを返します。

CRUD操作、あいまい検索、関連オブジェクトのクエリによる複数テーブルの結合、リモート関数呼び出しに対応しています。レスポンスの形式をクライアント側で制御できるため、バックエンド開発者はエンドポイントの実装やドキュメント作成にかける時間を減らせます。また、クライアントが必要とするデータが変わっても、サーバーコードを新たに書く必要はありません。READMEには、MySQL、PostgreSQL、SQL Server、Oracle、ClickHouse、Elasticsearch、Redisなど幅広いデータベースと、Java、Go、C#、PHP、Node.js、Python、Rust、Luaによるサーバー実装が記載されています。

エコシステムには、Javaサーバーのデモ、Android、iOS、JavaScript向けのクライアント例、テストやAPIドキュメント生成に使えるAPIAutoなどのツールが含まれています。

主な機能

  • 01クライアントはJSONリクエストで、必要なフィールド、フィルター、関連テーブルを指定できます。
  • 02CRUD、あいまい検索、複数テーブルのクエリ、リモート関数呼び出しに対応しています。
  • 03MySQL、PostgreSQL、Oracle、ClickHouse、Elasticsearchなど、多数のデータベースに対応しています。
  • 04Java以外にも、複数の言語によるサーバー実装を提供しています。
  • 05手書きのエンドポイントや個別のAPIドキュメントを用意する必要性を減らします。

ユースケース

  • 画面ごとに必要なデータの組み合わせが異なるアプリのバックエンドを、素早く構築する。
  • エンドポイントを実装せずに、既存のリレーショナルデータベース上に柔軟なデータAPIを公開する。
  • フロントエンドチームが必要なフィールドやネストした関連データを、1回のリクエストで取得できるようにする。

使う前に知っておきたいこと

  • ライセンスは NOASSERTION と記載されているため、ライセンス条件が不明です。使用する前に確認してください。

収録されている特集

トピック

よくある質問

APIJSON とは?
クライアントが必要なデータとレスポンス形式を指定できる、JSONベースのプロトコル兼ORMライブラリ。手書きのエンドポイントを増やさずに多様なAPIを提供できます。 APIJSONは、バックエンドAPI開発向けのJSONベースの通信プロトコル兼ORMライブラリです。クエリごとに個別のエンドポイントを定義する代わりに、クライアントが必要なテーブル、フィールド、フィルター、関連データを記述したJSONリクエストを送信し、サーバーは同じ構造のレスポンスを返します。
APIJSON は無料で使えますか?ライセンスは?
APIJSON は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
APIJSON は今もメンテナンスされていますか?
活発にメンテナンス中。APIJSON の最終コミットは 2026年11月1日 です。
APIJSON は何に使えますか?
画面ごとに必要なデータの組み合わせが異なるアプリのバックエンドを、素早く構築する。 エンドポイントを実装せずに、既存のリレーショナルデータベース上に柔軟なデータAPIを公開する。 フロントエンドチームが必要なフィールドやネストした関連データを、1回のリクエストで取得できるようにする。
APIJSON はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/APIJSON/APIJSON

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト