sgcOpenAPI

Eén gebundeld product voor Delphi en C++ Builder: OpenAPI 3.x-parser, native Pascal-SDK-generator, OpenAPI-servercomponent en 1.195+ kant-en-klare cloud-SDK's — allemaal op één Single-/Team-/Site-licentie.

OpenAPI 3.x-parser & -generator
OpenAPI-servercomponent
1.195+ kant-en-klare cloud-SDK's
Delphi 7 – RAD Studio 13

Wat het doet

Zet elke OpenAPI-specificatie om in productieklare Pascal-code met volledige typeveiligheid en IntelliSense-ondersteuning.

Van specificatie naar code in enkele seconden

Importeer elke OpenAPI- of Swagger-specificatie en laat sgcOpenAPI nette, idiomatische Object Pascal-interfaces genereren die klaar zijn voor je project.

  • Importeer OpenAPI 3.x-specificaties (JSON en YAML)
  • Achterwaartse compatibiliteit met Swagger 1.x en 2.x
  • Genereert native Object Pascal-interfaces en -classes
  • Typeveilige API-aanroepen met volledige IntelliSense-ondersteuning
  • Automatische documentatiegeneratie (PDF en CHM)

Kant-en-klare SDK's voor grote cloudplatforms

Ga direct aan de slag met kant-en-klare Pascal-SDK's voor de grootste cloudproviders. Alle SDK's worden regelmatig bijgewerkt op de nieuwste API-specificaties.

  • Amazon AWS — 280+ REST-services
  • Google Cloud — 250+ services
  • Microsoft Azure — 650+ services
  • Microsoft Graph API — 15+ services
AWS 280+ Google 250+ Azure 650+ Graph 15+ 1.195+ SDK's Direct te gebruiken

Publiceer en serveer je eigen OpenAPI

Met de meegeleverde OpenAPI-servercomponent kan een Delphi- of C++ Builder-backend zijn endpoints publiceren als een geldig OpenAPI 3.x-document en bedienen vanuit één component — hetzelfde model als de parser, geïntegreerd met de sgcWebSockets HTTP-server.

  • Publiceer een live openapi.json / openapi.yaml vanuit je endpoints
  • Bouw server-side endpoints rechtstreeks vanuit een OpenAPI-spec
  • Request- en response-validatie tegen de spec
  • Pluggable authenticatie (API-sleutel, OAuth2, JWT, Basic)
  • Meer over de servercomponent →

Hoe het werkt

Drie eenvoudige stappen om van een API-specificatie naar volledig geïntegreerde Pascal-code te gaan.

Stap 1

Importeren

Laad je OpenAPI 3.x-specificatiebestand in JSON- of YAML-formaat. Swagger 1.x- en 2.x-specificaties worden automatisch gedetecteerd en omgezet naar het OpenAPI 3.x-schema.

Stap 2

Genereren

De parser analyseert endpoints, parameters, request-/responsemodellen en authenticatieschema's en genereert vervolgens nette, idiomatische Pascal-code met de juiste typemappings.

Stap 3

Integreren

Plaats de gegenereerde units in je Delphi-project. Volledige typeveiligheid, IntelliSense-ondersteuning en geen externe afhankelijkheden. Begin direct met het aanroepen van API's.

Brede platformondersteuning

Werkt met elke belangrijke versie van de Delphi- en Pascal-toolchain.

Delphi

Volledige ondersteuning van Delphi 7 tot en met RAD Studio 13. VCL- en FireMonkey-frameworks met designtime-componentregistratie.

C++ Builder

Native C++ Builder-ondersteuning met wrapperheaders. Compatibel met C++ Builder 2007 tot en met C++ Builder 13.

Gegenereerde code in actie

Zie hoe een gegenereerde Pascal-SDK er in de praktijk uitziet — netjes, typeveilig en klaar voor gebruik.

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;

Eén product, drie tiers

Parser, codegenerator, servercomponent en alle 1.195+ kant-en-klare SDK's zijn in elke tier inbegrepen. Kies op teamgrootte: Single (1 ontwikkelaar), Team (2 ontwikkelaars) of Site (onbeperkt ontwikkelaars).

Automatiseer je API-integratie

Stop met het schrijven van HTTP-boilerplatecode. Genereer in enkele seconden typeveilige Pascal-SDK's vanuit elke OpenAPI-specificatie, of publiceer je eigen spec.