sgcOpenAPI

Delphi と C++ Builder 向けのバンドル製品: OpenAPI 3.x パーサー、ネイティブ Pascal SDK ジェネレーター、OpenAPI サーバーコンポーネント、1,195 以上のビルド済みクラウド SDK — すべてを Single / Team / Site ライセンス 1 つで利用できます。

OpenAPI 3.x パーサーとジェネレーター
OpenAPI サーバーコンポーネント
1,195+ のビルド済みクラウド SDK
Delphi 7 – RAD Studio 13

できること

あらゆる OpenAPI 仕様を、完全な型安全と IntelliSense サポートを備えた本番品質の Pascal コードに変換します。

仕様からコードまで数秒

任意の OpenAPI または Swagger 仕様をインポートすると、sgcOpenAPI がプロジェクトですぐに使える、整理された慣用的な Object Pascal インターフェースを生成します。

  • OpenAPI 3.x 仕様 (JSON および YAML) をインポート
  • Swagger 1.x と 2.x の後方互換性
  • ネイティブな Object Pascal インターフェースとクラスを生成
  • IntelliSense に完全対応した型安全な API 呼び出し
  • 自動ドキュメント生成 (PDF と CHM)

主要クラウドプラットフォーム向けのビルド済み SDK

大手クラウドプロバイダー向けにすぐ使える Pascal SDK で、すぐに開発を始められます。すべての SDK は最新の API 仕様に合わせて定期的に更新されます。

  • Amazon AWS — 280 以上の REST サービス
  • Google Cloud — 250 以上のサービス
  • Microsoft Azure — 650 以上のサービス
  • Microsoft Graph API — 15 以上のサービス
AWS 280+ Google 250+ Azure 650+ Graph 15+ 1,195+ SDKs Ready to Use

独自の OpenAPI を公開・配信

同梱の OpenAPI サーバーコンポーネントを使うと、Delphi または C++ Builder のバックエンドからエンドポイントを有効な OpenAPI 3.x ドキュメントとして公開し、1 つのコンポーネントから配信できます — パーサーと同じモデルで、sgcWebSockets HTTP サーバーと統合されています。

  • エンドポイントからライブの openapi.json / openapi.yaml を公開
  • OpenAPI 仕様からサーバー側エンドポイントを構築
  • 仕様に基づいたリクエストとレスポンスの検証
  • プラガブルな認証 (API キー、OAuth2、JWT、Basic)
  • サーバーコンポーネントの詳細 →

仕組み

API 仕様から完全に統合された Pascal コードまで、シンプルな 3 ステップです。

ステップ 1

インポート

JSON または YAML 形式の OpenAPI 3.x 仕様ファイルを読み込みます。Swagger 1.x と 2.x の仕様は自動的に検出され、OpenAPI 3.x スキーマに変換されます。

ステップ 2

生成

パーサーがエンドポイント、パラメーター、リクエスト/レスポンスモデル、認証スキームを解析し、適切な型マッピングを備えた、整理された慣用的な Pascal コードを生成します。

ステップ 3

統合

生成されたユニットを Delphi プロジェクトに組み込むだけです。完全な型安全、IntelliSense サポート、外部依存なし。すぐに API を呼び出せます。

幅広いプラットフォームサポート

Delphi と Pascal ツールチェーンの主要バージョンすべてで動作します。

Delphi

Delphi 7 から RAD Studio 13 まで完全対応。VCL と FireMonkey フレームワーク、デザインタイムコンポーネント登録に対応します。

C++ Builder

ラッパーヘッダー付きのネイティブ C++ Builder サポート。C++ Builder 2007 から C++ Builder 13 まで対応します。

生成コードの実例

生成された Pascal SDK が実際にどのように見えるかをご確認ください — 整理されていて、型安全で、すぐに使えます。

Delphi
uses
  sgcOpenAPI_PetStore;  // Generated from petstore.yaml

procedure TForm1.btnGetPetClick(Sender: TObject);
var
  Client: TsgcOpenAPI_PetStoreClient;
  Pet: TsgcOpenAPI_Pet;
begin
  Client := TsgcOpenAPI_PetStoreClient.Create(nil);
  try
    Client.BaseURL := 'https://petstore.swagger.io/v2';
    Client.ApiKey  := 'your-api-key';

    // Type-safe API call with IntelliSense
    Pet := Client.GetPetById(42);
    try
      Memo1.Lines.Add('Name: '    + Pet.Name);
      Memo1.Lines.Add('Status: '  + Pet.Status);
      Memo1.Lines.Add('Category: ' + Pet.Category.Name);
    finally
      Pet.Free;
    end;
  finally
    Client.Free;
  end;
end;

procedure TForm1.btnListPetsClick(Sender: TObject);
var
  Client: TsgcOpenAPI_PetStoreClient;
  Pets: TsgcOpenAPI_PetList;
  i: Integer;
begin
  Client := TsgcOpenAPI_PetStoreClient.Create(nil);
  try
    Client.BaseURL := 'https://petstore.swagger.io/v2';

    // Strongly-typed list of Pet objects
    Pets := Client.FindPetsByStatus('available');
    try
      for i := 0 to Pets.Count - 1 do
        ListBox1.Items.Add(Pets[i].Name);
    finally
      Pets.Free;
    end;
  finally
    Client.Free;
  end;
end;

1 つの製品、3 つのティア

パーサー、コードジェネレーター、サーバーコンポーネント、1,195 以上のビルド済み SDK は、すべてのティアに含まれます。チーム規模に応じてお選びください: Single (開発者 1 名)、Team (開発者 2 名)、Site (無制限の開発者)。

API 統合を自動化

ボイラープレートな HTTP コードを書くのはやめましょう。任意の OpenAPI 仕様から、型安全な Pascal SDK を数秒で生成できます。あるいは独自の API を公開することもできます。