API Extension Development
API Extensions are .pkg packages that provide typed DTOs and operation metadata for a specific API. They are generated from service descriptions (OpenAPI, WSDL, OData, GraphQL, Kafka Schema Registry).
Auto-Generation (Recommended)
Use the aeth analyze command or the Studio Import API wizard. The generated package includes:
- Typed C# DTO classes
- Operation descriptors (URL templates, HTTP methods, parameter bindings)
- Namespace and assembly metadata
aeth analyze https://api.example.com/openapi.json \
--type OpenAPI \
--app-name "Example" \
--service-name "ExampleAPI" \
--namespace Example.ExampleAPI \
--output ./packages
Package Structure
A .pkg file is a ZIP archive containing:
manifest.json– package metadata (name, version, type, dependencies)*.dll– compiled assembly with generated typesoperations.json– operation descriptor list
Package Metadata (manifest.json)
{
"name": "Example.ExampleAPI",
"version": "1.0.0",
"developer": "Your Name",
"type": "ApiExtension",
"description": "Generated API extension for ExampleAPI",
"targetFramework": "net8.0"
}
Installing and Using
aeth install ./Example.ExampleAPI.1.0.0.pkg
After installation, the extension's operations appear in the Studio service tree and its types are available in C# Script steps.
Versioning
Use --version with aeth analyze to set the package version:
aeth analyze ./api.yaml --type OpenAPI --version 2.1.0 \
--app-name "Example" --service-name "API" --namespace Example.API