Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
4690062
feat: add sdk publish command and its flags
Ayeshas09 Mar 13, 2026
3a614c2
feat: add interactive and non-interactive action classes
aliasghar98 Mar 16, 2026
9884975
chore: remove comments and todos
aliasghar98 Mar 17, 2026
4a2f5be
feat: add non-interactive flow and infra classes
aliasghar98 Mar 25, 2026
5349691
feat: add command to fetch list of publishing profiles
sohail2721 Mar 26, 2026
5c2c0d0
fix formatting
sohail2721 Mar 26, 2026
ae269fa
refactor and update design
sohail2721 Mar 26, 2026
b12a1b9
feat: add interactive mode
aliasghar98 Mar 26, 2026
ac36f48
Merge branch 'ayeshas09/feat-sdk-publish-command' of github.com:apima…
aliasghar98 Mar 26, 2026
f193a74
fix: interactive mode for single language only
aliasghar98 Mar 26, 2026
be2073f
chore: replace baseUrl
aliasghar98 Mar 26, 2026
1735587
fix: update go config item for publishing profile
aliasghar98 Mar 27, 2026
47c8bec
fix: create package configuration object when writing config
aliasghar98 Mar 29, 2026
34097ed
fix: remove swift package config
aliasghar98 Mar 29, 2026
e66c7a4
feat: create package configuration dtos
aliasghar98 Mar 29, 2026
8ef035d
fix: removed unnecessary tracking events and created single validatio…
aliasghar98 Mar 29, 2026
a89c393
fix: error handling for sdk publishing endpoint error responses
aliasghar98 Mar 29, 2026
4bd9dbc
feat: pass package version for sdk generation
aliasghar98 Mar 29, 2026
6353d20
fix: remove telemetry from publish command
aliasghar98 Mar 29, 2026
cd603f2
fix: resolve all issues for non interactive flow and improve validati…
aliasghar98 Mar 29, 2026
716270e
fix: resolved interactive mode issues and improved messaging
aliasghar98 Mar 29, 2026
5982666
refactor: improved messaging and reordered prompts class and methods
aliasghar98 Mar 29, 2026
20520e1
fix: minor fixes
aliasghar98 Mar 29, 2026
0afa7f3
fix: improve messaging
aliasghar98 Mar 29, 2026
0159c59
docs: update readme
aliasghar98 Mar 29, 2026
9c9bf47
Merge branch 'dev' into ayeshas09/feat-sdk-publish-command
aliasghar98 Mar 29, 2026
151225d
refactor: move tracking to command layer via callback function
aliasghar98 Mar 30, 2026
a5c887e
fix: add validation for semantic version
aliasghar98 Mar 30, 2026
f17c0d1
fix: add validation for build and sdk directories
aliasghar98 Mar 30, 2026
c59b9fc
fix: return action result cancelled if sdk generation cancelled
aliasghar98 Mar 30, 2026
6aaed50
fix: make publish type required and add new enum field called both
aliasghar98 Mar 30, 2026
38f7999
fix: reject pre release versions
aliasghar98 Mar 31, 2026
b1e518a
fix: update messaging for source code only publishing and semantic ve…
aliasghar98 Mar 31, 2026
891955e
fix: update readme to include publish type both
aliasghar98 Mar 31, 2026
0cb1c58
fix: update examples to reflect publish type
aliasghar98 Mar 31, 2026
94dbe5f
fix: remove sdk context validation
aliasghar98 Mar 31, 2026
438eae7
fix: add is cancelled check for sdk generation
aliasghar98 Mar 31, 2026
c76b0a6
chore: add saeedjamshaid as code owner
aliasghar98 Mar 31, 2026
4db0e32
chore: add Shield-Jaguar and aliasghar98 to code owners
aliasghar98 Mar 31, 2026
d381ef1
feat: add polling for non interactive publishing
aliasghar98 Apr 1, 2026
ba4dbed
fix: remove interactive flag
aliasghar98 Apr 1, 2026
86d8cd7
fix: rename profile flag to profile-id and other minor messaging impr…
aliasghar98 Apr 1, 2026
6ab7cb0
fix: messaging improvements
aliasghar98 Apr 1, 2026
abf3179
fix: removed go from languages
aliasghar98 Apr 1, 2026
b579a9d
fix: messaging improvement
aliasghar98 Apr 1, 2026
379dfd5
fix: keep unzipped sdk at destination, and zip the contents in a temp…
aliasghar98 Apr 2, 2026
e79ea16
feat: open temp sdk directory when dry run flag is enabled
aliasghar98 Apr 2, 2026
316c79e
fix: remove 'both' as publish-type and accept multiple values for pub…
aliasghar98 Apr 2, 2026
c3c8200
fix: improve description to clearly distinguish interactive and non-i…
aliasghar98 Apr 2, 2026
90a73db
feat: update npm dependencies (#263)
sohail2721 Apr 2, 2026
5bc6937
feat: add api group information to interactive mode and publishing pr…
aliasghar98 Apr 3, 2026
4155c93
feat: updates to messaging and refactored some methods
aliasghar98 Apr 5, 2026
7dc55f3
fix: minor messaging improvements
aliasghar98 Apr 5, 2026
ff4bcec
chore: updated readme and package.json descriptions
aliasghar98 Apr 6, 2026
7f2fc90
refactor: resolve sonar cloud warnings
aliasghar98 Apr 6, 2026
113ac70
feat: add support for saving and applying sdk customizations (#251)
Ayeshas09 Apr 9, 2026
cbdd2e6
Merge branch 'dev' into ayeshas09/feat-sdk-publish-command
aliasghar98 Apr 9, 2026
26af93e
fix: build errors
aliasghar98 Apr 9, 2026
fdb891e
refactor: replace version with concrete value object SemVersion
aliasghar98 Apr 9, 2026
e8bd1dd
refactor: use concrete ProfileId value object instead of string
aliasghar98 Apr 9, 2026
b473696
refactor: improved domain modelling for promptc classes
aliasghar98 Apr 9, 2026
85e101e
refactor: redesigned flows for interactive and non interactive, moved…
aliasghar98 Apr 9, 2026
16ba4dd
refactor: move table creation to prompt file
aliasghar98 Apr 10, 2026
01af4c7
refactor: remove sdk publish prompts from both interactive and non-in…
aliasghar98 Apr 11, 2026
2f800b5
refactor: add try create methods in sem version and profile id for re…
aliasghar98 Apr 11, 2026
c3e395c
refactor: incorporated feedback
aliasghar98 Apr 11, 2026
d028bdd
fix: rename profile to profile id in missing required flags message
aliasghar98 Apr 13, 2026
04a9e41
fix: pass prefix for downloads directory
aliasghar98 Apr 13, 2026
a2b65df
incorporated second feedback
aliasghar98 Apr 13, 2026
046f2ec
incorporated third feedback
aliasghar98 Apr 13, 2026
a645983
fix: interactive mode messaging improvements
aliasghar98 Apr 13, 2026
f0c0ff9
incorporated fourth feedback
aliasghar98 Apr 14, 2026
ecd7784
fix: messaging improvement
aliasghar98 Apr 14, 2026
9a4dc05
refactor: improved publishing profiles methods for readability and cr…
aliasghar98 Apr 14, 2026
4eacf2b
fix: messaging improvements
aliasghar98 Apr 14, 2026
2f28254
fix: update sdk version in package json
aliasghar98 Apr 14, 2026
26b59f4
fix: compute default src and sdk folders accurately
aliasghar98 Apr 14, 2026
a96fd8d
refactor: extract validator functions to static methods
aliasghar98 Apr 14, 2026
4ca67fd
fix: incorrect default path validation
aliasghar98 Apr 15, 2026
b46ae4c
incorporated fourth feedback
aliasghar98 Apr 15, 2026
983ed82
chore: fix apimatic app casing
aliasghar98 Apr 15, 2026
f368185
Merge branch 'dev' into ayeshas09/feat-sdk-publish-command
aliasghar98 Apr 15, 2026
2e8b0ae
chore: update readme
aliasghar98 Apr 15, 2026
979ffe6
fix: update check for build context to only see if build directory ex…
aliasghar98 Apr 17, 2026
5b591d1
fix: add an optional packageSetting parameter to sdkGenerate
Ayeshas09 Apr 17, 2026
a8bb8fb
fix: pass package settings to sdk generate action
aliasghar98 Apr 17, 2026
b9d500a
fix: sdk generate skip chnages command flow
Ayeshas09 Apr 22, 2026
b604116
refactor: remove redundant interface
aliasghar98 Apr 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @saeedjamshaid @Shield-Jaguar @aliasghar98
65 changes: 64 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ $ npm install -g @apimatic/cli
$ apimatic COMMAND
running command...
$ apimatic (--version)
@apimatic/cli/1.1.0-beta.8 win32-x64 node-v23.4.0
@apimatic/cli/1.1.0-beta.11 win32-x64 node-v23.4.0
$ apimatic --help [COMMAND]
USAGE
$ apimatic COMMAND
Expand All @@ -46,8 +46,10 @@ USAGE
* [`apimatic portal recipe new`](#apimatic-portal-recipe-new)
* [`apimatic portal serve`](#apimatic-portal-serve)
* [`apimatic portal toc new`](#apimatic-portal-toc-new)
* [`apimatic publishing profile list`](#apimatic-publishing-profile-list)
* [`apimatic quickstart`](#apimatic-quickstart)
* [`apimatic sdk generate`](#apimatic-sdk-generate)
* [`apimatic sdk publish`](#apimatic-sdk-publish)
* [`apimatic sdk save-changes`](#apimatic-sdk-save-changes)

## `apimatic api transform`
Expand Down Expand Up @@ -387,6 +389,25 @@ EXAMPLES

_See code: [src/commands/portal/toc/new.ts](https://github.com/apimatic/apimatic-cli/blob/beta/src/commands/portal/toc/new.ts)_

## `apimatic publishing profile list`

List all publishing profiles

```
USAGE
$ apimatic publishing profile list

DESCRIPTION
List all publishing profiles

Display all publishing profiles associated with your account, including each profile's name, ID and enabled languages.

EXAMPLES
apimatic publishing profile list
```

_See code: [src/commands/publishing/profile/list.ts](https://github.com/apimatic/apimatic-cli/blob/beta/src/commands/publishing/profile/list.ts)_

## `apimatic quickstart`

Create your first SDK or API Portal using APIMatic.
Expand Down Expand Up @@ -445,6 +466,48 @@ EXAMPLES

_See code: [src/commands/sdk/generate.ts](https://github.com/apimatic/apimatic-cli/blob/beta/src/commands/sdk/generate.ts)_

## `apimatic sdk publish`

Generate and publish an SDK to a package registry and/or source repository

```
USAGE
$ apimatic sdk publish [-p <value>] [-v <value>] [-d <value>] [-l csharp|java|php|python|ruby|typescript] [-f]
[-i <value>] [--publish-type package|sourcecode...] [--dry-run]

FLAGS
-d, --destination=<value> [default: <input>/sdk] path where the sdk will be generated.
-f, --force overwrite changes without asking for user consent.
-i, --input=<value> [default: ./] path to the parent directory containing the 'src' directory, which
includes API specifications and configuration files.
-l, --language=<option> Language of the SDK to generate and publish.
<options: csharp|java|php|python|ruby|typescript>
-p, --profile-id=<value> Id of the publishing profile to use.
-v, --version=<value> Semantic version of the SDK to publish (e.g. 1.0.0).
--dry-run Generate the SDK locally for review without publishing.
--publish-type=<option>... One or more publishing targets: 'package' for a package registry, 'sourcecode' for a
git repository.
<options: package|sourcecode>

DESCRIPTION
Generate and publish an SDK to a package registry and/or source repository

Generate and publish an SDK using a publishing profile configured in the APIMatic App. Requires an input directory
containing the API specification. Run without flags for a step-by-step interactive experience, or pass all required
flags for CI/CD automation.

EXAMPLES
apimatic sdk publish

apimatic sdk publish --profile-id=a1b2c3d4e5f6a1b2c3d4e5f6 --language=typescript --version=1.0.0 --publish-type=package --publish-type=sourcecode

apimatic sdk publish --profile-id=b2c3d4e5f6a1b2c3d4e5f6a1 --language=java --version=2.0.0 --publish-type=sourcecode

apimatic sdk publish --profile-id=c3d4e5f6a1b2c3d4e5f6a1b2 --language=python --version=1.0.0 --publish-type=package --dry-run
```

_See code: [src/commands/sdk/publish.ts](https://github.com/apimatic/apimatic-cli/blob/beta/src/commands/sdk/publish.ts)_

## `apimatic sdk save-changes`

Save customizations made to an auto-generated SDK
Expand Down
Loading
Loading