Creating Extension Projects
An extension project is a workspace for defining one or more API extensions. It stores service definitions, schema imports, and build settings, and is saved as an .aep file.
Creating a New Project
- Open the API Extension Designer.
- Click New in the toolbar (or + New project on the onboarding screen).
- In the Create New Extension Project dialog, choose:
- Empty Project — a blank project with one application, ready for you to add your own services.
- Example Project — pre-configured with Hummingbird Airlines (SOAP) and Swagger Petstore (OpenAPI) sample services.
- The project opens with a Project Panel in the detail area.
An empty project starts with the name MyCompany.MyExtension and a package ID of MyCompany.MyExtension, and contains a single application named My Application. The example project is named Aethrix.Extensions.Examples and demonstrates a SOAP service (Hummingbird Airlines) and a REST/OpenAPI service (Swagger Petstore).
Project Structure
The project tree is hierarchical: a project contains applications, and each application contains services. (There is no separate References node — dependencies are resolved at build time.)
MyExtension.aep
├── Application: "My Application"
│ ├── Service: "Service #1" (OpenAPI, WSDL, CSDL, Kafka, GraphQL, gRPC, WebSocket, Designer, or Manual)
│ └── Service: "Service #2"
└── Application: "Another Application"
└── Service: "Service #1"
Opening an Existing Project
- Click Open in the toolbar and browse to an
.aepfile (filter: API Extension Projects (.aep)). - Or select a project from the Recent projects list on the onboarding page.
Unsaved work from a previous session is automatically restored on launch; an info bar prompts you to use Save as... to keep it permanently.
Project Settings
The Project Panel (shown when the project node is selected) contains:
| Section | Setting | Description |
|---|---|---|
| Identity | Name | Display name for the extension project |
| Package Id | Dot-separated identifier, e.g. Company.Type.PackageName | |
| Summary | Short description (max 160 chars) | |
| Tags | Comma-separated tags, e.g. soap, rest, airline | |
| Icon | Relative path or https URL to a PNG icon (square) | |
| Release Notes URL | Link to release notes | |
| Publishing | Package Visibility | Public, Private, or Internal |
| Organization IDs | Comma-separated organization IDs (for Internal visibility) | |
| Version & Build | Auto Version | Toggle automatic version increments on |
| Version | Manual version (shown when Auto Version is off) | |
| Pre-release | Mark the package as a pre-release | |
| Build Mode | Debug or Release | |
| Export | Export Path | Folder where the generated .pkg is written |
| Description | Description | Markdown description shown in the extension manager |
| Changelog | Auto-updated on re-analysis; describe what changed |
Saving
- Save ( Ctrl+S) — save the project file.
- Save as... — save a copy under a new name or location.
The project file (.aep) references the service definitions and build configuration. Generated code and the compiled .pkg file are output artifacts, not part of the project source.
Closing a Project
Click Close in the toolbar. If there are unsaved changes (or the project is still temporary), you are asked to confirm closing without saving.